[CRIU] [PATCHv1 17/26] vdso: try_fill_symtable always for compat tasks
Dmitry Safonov
dsafonov at virtuozzo.com
Thu Jun 16 03:53:34 PDT 2016
Their vDSO's pfn differ from native tasks.
TODO: compute on dump compatible vDSO's pfn.
Cc: Cyrill Gorcunov <gorcunov at openvz.org>
Signed-off-by: Dmitry Safonov <dsafonov at virtuozzo.com>
---
criu/vdso.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/criu/vdso.c b/criu/vdso.c
index 517755513555..057b2adb4d74 100644
--- a/criu/vdso.c
+++ b/criu/vdso.c
@@ -102,7 +102,14 @@ int parasite_fixup_vdso(struct parasite_ctl *ctl, pid_t pid,
*/
args->start = vma->e->start;
args->len = vma_area_len(vma);
- args->try_fill_symtable = (fd < 0) ? true : false;
+ /*
+ * XXX: For compatible tasks, vDSO pfn is different from
+ * our native vdso_pfn. Check vma explicitly.
+ */
+ if (!seized_native(ctl))
+ args->try_fill_symtable = true;
+ else
+ args->try_fill_symtable = (fd < 0) ? true : false;
args->is_vdso = false;
if (parasite_execute_daemon(PARASITE_CMD_CHECK_VDSO_MARK, ctl)) {
--
2.8.3
More information about the CRIU
mailing list