mirror of
https://github.com/checkpoint-restore/criu.git
synced 2026-08-03 23:33:01 +00:00
vdso: Add compatible property to vdso_maps
We need to differ compatible (ia32) vdso maps from x86_64. That dictates ABI on vdso code. According to that, the decision to (not) use gettimeofday() from vdso in 64-bit restorer. Signed-off-by: Dmitry Safonov <dima@arista.com> Signed-off-by: Andrei Vagin <avagin@gmail.com>
This commit is contained in:
parent
23960fe60e
commit
9e5c0634ff
2 changed files with 5 additions and 2 deletions
|
|
@ -38,6 +38,7 @@ struct vdso_maps {
|
|||
unsigned long vdso_start;
|
||||
unsigned long vvar_start;
|
||||
struct vdso_symtable sym;
|
||||
bool compatible;
|
||||
};
|
||||
|
||||
#define VDSO_SYMBOL_INIT { .offset = VDSO_BAD_ADDR, }
|
||||
|
|
|
|||
|
|
@ -597,7 +597,8 @@ int vdso_init_restore(void)
|
|||
|
||||
vdso_maps.sym = kdat.vdso_sym;
|
||||
#ifdef CONFIG_COMPAT
|
||||
vdso_maps_compat.sym = kdat.vdso_sym_compat;
|
||||
vdso_maps_compat.sym = kdat.vdso_sym_compat;
|
||||
vdso_maps_compat.compatible = true;
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
|
|
@ -621,7 +622,8 @@ int kerndat_vdso_fill_symtable(void)
|
|||
pr_err("Failed to fill compat vdso symtable\n");
|
||||
return -1;
|
||||
}
|
||||
kdat.vdso_sym_compat = vdso_maps_compat.sym;
|
||||
vdso_maps_compat.compatible = true;
|
||||
kdat.vdso_sym_compat = vdso_maps_compat.sym;
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue