[CRIU] [PATCH 5/9] vdso: Implement vdso proxy on restore

Cyrill Gorcunov gorcunov at openvz.org
Thu May 23 17:42:15 EDT 2013


When a task being restored we may meet two situations

 - vdso in image doesn't match the runtime vdso provided
   by a kernel. For this case we need to patch dumpee
   vdso redirecting calls to runtime vdso, thus dumpee
   vdso become a proxy.

 - vdso in image does match the runtime vdso, in this
   case we simply remap runtime vdso to address where
   dumpee vdso lives. Plain remapping here is quite
   important and allows us to save vdso pfn which will
   be used in parasite code later.

Note after this patch the restored task may have two
vdso in memory. Proper dumping of such situation will
be addressed in future patches.

Signed-off-by: Cyrill Gorcunov <gorcunov at openvz.org>
---
 arch/arm/include/asm/vdso.h |  4 +++
 arch/arm/vdso-pie.c         |  5 ++++
 arch/x86/include/asm/vdso.h |  4 +++
 arch/x86/vdso-pie.c         | 59 +++++++++++++++++++++++++++++++++++++++++++++
 pie/restorer.c              | 12 +++++++++
 5 files changed, 84 insertions(+)

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0005-vdso-Implement-vdso-proxy-on-restore.patch
Type: text/x-patch
Size: 4487 bytes
Desc: not available
URL: <http://lists.openvz.org/pipermail/criu/attachments/20130524/15c4ad35/attachment.bin>


More information about the CRIU mailing list