[CRIU] [PATCH 0/8] Prepare the support for AArch64 --- series 2
Cyrill Gorcunov
gorcunov at gmail.com
Tue Mar 11 02:37:44 PDT 2014
On Mon, Mar 10, 2014 at 12:51:20PM +0400, Alexander Kartashov wrote:
> Dear colleagues,
>
> It turned out that the previous patchset preparing the support
> for AArch64 didn't solve all problems with that architecture.
>
> This patchset addresses the following problems:
>
> * the size of the TLS register is machine-dependent (patches #1 and #2);
> * the vDSO restoration code written originally for x86 isn't sharable
> with other architectures (patches #3 and #4);
> * there's no reference implementation of bit operations in the project
> (patch #5).
>
> The rest of the patchset contains miscellaneous cleanups.
Alexander, the vdso code is arch dependant thus I would suggest to not
share x86-64 implementation but implement ARM implementation instead.
What we have now:
extern int vdso_redirect_calls(void *base_to, void *base_from, struct vdso_symtable *to, struct vdso_symtable *from);
extern int vdso_fill_symtable(char *mem, size_t size,struct vdso_symtable *t);
extern int vdso_remap(char *who, unsigned long from, unsigned long to, size_t size);
extern int vdso_proxify(char *who, struct vdso_symtable *sym_rt, VmaEntry *vma_entry, unsigned long vdso_rt_parked_at);
extern int parasite_fixup_vdso(struct parasite_ctl *ctl, pid_t pid, struct vm_area_list *vma_area_list);
these 5 helpers, I believe we will have more pain in the ass in future if we share the
implementation code now. So you only need to implement these 5 calls for arm64 and
that's all.
More information about the CRIU
mailing list