> On Sep 13, 2018, at 1:07 AM, Florian Weimer <fwei...@redhat.com> wrote:
> 
> On 09/12/2018 07:11 PM, Andy Lutomirski wrote:
>>> The multiplexer interfaces need much more surgery and talking about futex,
>>> we'd need to sit down with quite some people and identify the things they
>>> actually care about before just splitting it up and keeping the existing
>>> overloaded trainwreck the same.
>>> 
>> There’s also the issue of how much the speedup matters. For futex, maybe a 
>> better interface saves 3ns, but a futex syscall is hundreds of ns. 
>> clock_gettime() is called at high frequency and can be ~25ns. Saving a few 
>> ns is a bigger deal.
> 
> My concern is that the userspace system call wrappers currently do not know 
> how many arguments the individual operations take and what types the 
> arguments have (hence the “type-polymorphic” nature I mentioned). This could 
> be a problem for on-stack argument passing (where you might read values 
> beyond the end of the stack, and glibc avoids that most of the time by having 
> enough cruft on the stack), and for architectures which pass pointers and 
> integers in different registers (like some m68k ABIs do for the return value).
> 
> 

Isn’t clock_gettime already special because of the vDSO entry point, though?

Reply via email to