[CRIU] [PATCH 0/9] vdso proxy, v7
Cyrill Gorcunov
gorcunov at openvz.org
Thu May 23 17:42:10 EDT 2013
Hi, here is new attempt for vdso proxy. The main chages from
previous series
- No more #if defined(CONFIG_X86_64) in sources, we provide
stubs for arm code
- Because of previous bullet, had to tune up makefiles a bit
- No typedefs for vdso structures
- vdso_remap helper kept inplace, since it's convenient to
work with instead of opencoded calls
- runtime vdso parking address now calculated in lazy manner,
argumets as copied by compiler itself
- two global variables @vdso_pfn and @vdso_sym_rt, thus getting
rid of helpers to access them (I still don't like exporting
global variables, but as @xemul asked)
- struct vdso_mark explained with big comment
- "pagemap" now accessed via open_proc helper (thanks Pavel
for the hint)
- fixed a typo in dropping maked vma from dumping vmas list
Please take a look!
Cyrill Gorcunov (9):
make: Define program object deps as separate variable
vdso: Introduce vdso pie-engine
vdso: Initialize vdso data on startup
vdso: Remap runtime vdso copy to safe place
vdso: Implement vdso proxy on restore
vdso: Fetch page frame number on init
vdso: Mark runtime vdso if proxy needed
vdso: Escape double dumping of rt-vdso if proxy present
proc: Don't mark mishinted vdso
Makefile | 10 +-
Makefile.crtools | 1 +
arch/arm/include/asm/vdso.h | 16 +++
arch/arm/vdso-pie.c | 31 +++++
arch/arm/vdso.c | 17 +++
arch/x86/include/asm/vdso.h | 16 +++
arch/x86/vdso-pie.c | 311 ++++++++++++++++++++++++++++++++++++++++++++
arch/x86/vdso.c | 97 ++++++++++++++
cr-dump.c | 11 ++
cr-restore.c | 34 ++++-
include/parasite-syscall.h | 3 +
include/parasite.h | 8 ++
include/restorer.h | 5 +
include/vdso.h | 114 ++++++++++++++++
parasite-syscall.c | 121 +++++++++++++++++
pie/Makefile | 1 +
pie/parasite.c | 18 +++
pie/restorer.c | 30 +++++
proc_parse.c | 5 +-
19 files changed, 844 insertions(+), 5 deletions(-)
create mode 100644 arch/arm/include/asm/vdso.h
create mode 100644 arch/arm/vdso-pie.c
create mode 100644 arch/arm/vdso.c
create mode 100644 arch/x86/include/asm/vdso.h
create mode 100644 arch/x86/vdso-pie.c
create mode 100644 arch/x86/vdso.c
create mode 100644 include/vdso.h
--
1.8.1.4
More information about the CRIU
mailing list