[CRIU] [PATCH 02/10] x86/vdso: add ia32 vdso symbols
Dmitry Safonov
dsafonov at virtuozzo.com
Thu Feb 16 08:20:37 PST 2017
For 32-bit at this moment there are follwing entries:
o __vdso_clock_gettime
o __vdso_gettimeofday
o __vdso_time
o __kernel_vsyscall
o __kernel_sigreturn
o __kernel_rt_sigreturn
So, there isn't __vdso_getcpu(), which is present in 64-bit vDSO,
and 64-bit vDSO doesn't have those __kernel_*.
This is fine as two vdso blobs with the same not present symbols
are considered to be the same in comparison.
I didn't introduce ARCH_VDSO_SYMBOLS_32, as it would have different
size and that will result in quite painful conversion of struct
vdso_symtable (it's fixed size and e.g., inside parasite's parameters)
Which is not needed by the described behavior of vdso blobs comparison.
Signed-off-by: Dmitry Safonov <dsafonov at virtuozzo.com>
---
criu/arch/x86/include/asm/vdso.h | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/criu/arch/x86/include/asm/vdso.h b/criu/arch/x86/include/asm/vdso.h
index a1cc9bb9751b..37296f96af30 100644
--- a/criu/arch/x86/include/asm/vdso.h
+++ b/criu/arch/x86/include/asm/vdso.h
@@ -12,13 +12,16 @@
* This is a minimal amount of symbols
* we should support at the moment.
*/
-#define VDSO_SYMBOL_MAX 4
+#define VDSO_SYMBOL_MAX 7
#define ARCH_VDSO_SYMBOLS \
"__vdso_clock_gettime", \
"__vdso_getcpu", \
"__vdso_gettimeofday", \
- "__vdso_time"
+ "__vdso_time", \
+ "__kernel_vsyscall", \
+ "__kernel_sigreturn", \
+ "__kernel_rt_sigreturn"
struct vdso_symtable;
--
2.11.1
More information about the CRIU
mailing list