Serge E. Hallyn
serue at us.ibm.com
Wed Jan 27 16:48:06 PST 2010
Quoting Oren Laadan (orenl at cs.columbia.edu):
> I pushed ckpt-v19-rc2.9 which has all patches (*) inside and folded
> to a clean set. It passes basic tests here.
> (*) except the recent fix to s390 restart-blocks
> Next step is to rebase it to a recent kernel and push again as v19-rc3.
> Please give it a try, see if I missed anything.
Doh, actually, there is still a problem with IA32 tasks on x86-64:
if COMPAT_VDSO=y then the do_munmap() in destroy_mm() fails bc
vma->end > TASK_SIZE (vma->start == TASK_SIZE). The reason this
doesn't cause a problem on x86-32, actually, is only bc the vdso
page doesn't seem to be in the list of vma's at all! At least a
printk in destroy_mm() (a few days ago) never showed it running
across the vdso page.
So, perhaps the way to simultaneously solve both this and the unmaps
of 64-bit mappings in /bin/restart_64 after it has switched to
TIF_IA32 is to move destroy_mm() to a proper helper in mm/mmap.c,
and have it tell do_munmap() to avoid the TASK_SIZE check.
More information about the Containers