Messages in this thread | | | From | Andy Lutomirski <> | Date | Wed, 19 Sep 2012 14:15:46 -0700 | Subject | Re: [PATCH 0/6][RFC] Rework vsyscall to avoid truncation/rounding issue in timekeeping core |
| |
On Wed, Sep 19, 2012 at 1:50 PM, Luck, Tony <tony.luck@intel.com> wrote: >> Does anything except the vDSO actually use the vDSO data page? It's >> mapped as part of the vDSO image (i.e. at a non-constant address), and >> it's not immediate obvious how userspace would locate that page. > > Just for reference - on ia64 the address of the entry point for the magic > fast system call page is passed to each applications via the "auxv" structure > that exec(2) drops at the top of stack after args/env in the AT_SYSINFO > entry. Apps look for it to find out where to jump for fast system call entry > (if it isn't there, they fall back to regular slow syscall path). > > Same method could be used to provide the address of a magic read-only > for users page that kernel fills with stuff for simple system calls.
Erk. I'd much rather *not* pass this information to user apps -- if they only ever access this stuff via the vDSO, then there's no ABI issue the next time the data structure changes. (e.g. on x86-64 it's changed at least twice this year, and nothing noticed.)
--Andy
| |