On Wed, Mar 12, 2014 at 2:37 PM, H. Peter Anvin <h...@linux.intel.com> wrote: > On 03/12/2014 12:41 PM, Linus Torvalds wrote: >> >> So my reaction was "don't do that". >> >> But people pointing out that we can't do what x86-64 does made me >> think: we could avoid the whole "nasty code for a legacy case" by >> making it the *non*-legacy case. We could get rid of the fixmap >> HPET/VVAR entirely - on x86-64 (which can use those addresses) a >> PC-relative addressing is probably actually better anyway, so mapping >> them together with the vdso code shouldn't hurt. >> > > How would that deal with the legacy vsyscall case for x86-64? Just rely > on the "legacy vsyscall emulation" (which seems to have its own class of > problems...)?
The emulated 64-bit vsyscall is completely independent of the vdso and any user-accessible data whatsoever -- it's just a self-contained bit of code that runs in kernel space. There is no user-executable code involved at all. (There is code that *looks* executable to a dynamic recompiler, but that code consists of ordinary system calls.) As far as I know, all of the problems with it (other than the fact that it exists at all) were solved a couple years ago. --Andy -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/