On Tue, May 20, 2014 at 11:24:56AM -0700, Andy Lutomirski wrote: > On Tue, May 20, 2014 at 11:18 AM, H. Peter Anvin <hpa@xxxxxxxxx> wrote: > > On 05/20/2014 11:01 AM, Cyrill Gorcunov wrote: > >>> > >>> This patch should fix this issue, at least. If there's still a way to > >>> get a native vdso that doesn't say "[vdso]", please let me know/ > >> > >> Yes, having a native procfs way to detect vdso is much preferred! > >> > > > > Is there any path by which we can end up with [vdso] without a leading > > slash in /proc/self/maps? Otherwise, why is that not "native"? > > Dunno. But before this patch the reverse was possible: we can end up > with a vdso that doesn't say [vdso]. I fear I don't understand the phrase "leading slash in /proc/self/maps". Peter could you rephrase please? > >>>> The situation get worse when task was dumped on one kernel and > >>>> then restored on another kernel where vdso content is different > >>>> from one save in image -- is such case as I mentioned we need > >>>> that named vdso proxy which redirect calls to vdso of the system > >>>> where task is restoring. And when such "restored" task get checkpointed > >>>> second time we don't dump new living vdso but save only old vdso > >>>> proxy on disk (detecting it is a different story, in short we > >>>> inject a unique mark into elf header). > >>> > >>> Yuck. But I don't know whether the kernel can help much here. > >> > >> Some prctl which would tell kernel to put vdso at specifed address. > >> We can live without it for now so not a big deal (yet ;) > > > > mremap() will do this for you. > > Except that it's buggy: it doesn't change mm->context.vdso. For > 64-bit tasks, the only consumer outside exec was arch_vma_name, and > this patch removes even that. For 32-bit tasks, though, it's needed > for signal delivery. yes, fwiw we can deal with it currently but i'm not sure yet about compat case simply because didn't look presicely. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>