lkml.org 
[lkml]   [2012]   [Sep]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 0/6][RFC] Rework vsyscall to avoid truncation/rounding issue in timekeeping core
On 09/19/2012 01:50 PM, Luck, Tony 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).

Nice. So we could "disable" fsyscalls on a kernel and not break
userland. That makes it easier to replace with the vdso method at some
point. So that's good to hear!

> 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.

Now, I suspect the difficult part will be finding someone with the time
and interest to try get the vdso gettime working on ia64 (or s390 or
powerpc), and then try to unify the kernel side implementation. Reducing
the maintenance burden might not be inspirational enough, especially if
there is a small performance cost along with it.

I sort of suspect that its more likely that such unification work could
be done as part of enabling vdso on an otherwise non vsyscall enabled
arch (like ARM), since at least there they have the carrot of the
performance gain to drive them.

And also, all this discussion is a bit far afield of the patchset I'm
proposing here. :) I'd still like to hear any thoughts on it from the
various arch maintainers, otherwise I'll submit it to Thomas.

thanks
-john



\
 
 \ /
  Last update: 2012-09-20 00:01    [W:0.053 / U:0.068 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site