Messages in this thread | | | Date | Fri, 14 Dec 2012 13:08:35 -0800 | From | "H. Peter Anvin" <> | Subject | Re: [CRIU] [PATCH] Add VDSO time function support for x86 32-bit kernel |
| |
On 12/14/2012 12:12 PM, Cyrill Gorcunov wrote: >>> >> The real issue is that happens if the process is checkpointed while >> inside the vdso and now eip/rip or a stack frame points into the vdso. >> This is not impossible or even unlikely, especially on 32 bits it is >> downright likely. > > I fear if there are stacked ip which point to vdso -- we simply won't > be able to restore properly if vdso internal format changed significantly > between kernel versions. (At moment we restore vdso exactly at same position > it was on checkpoint stage with same content, iirc). >
I don't think there is a way around that. It is completely unreasonable to say that the vdso cannot change between kernel versions, for obvious reasons. It's worse than "significantly"... changing even one instruction makes it plausible your eip/rip will point into the middle of an instruction.
-hpa
| |