[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20160525.142821.1719403997976778673.davem@davemloft.net>
Date: Wed, 25 May 2016 14:28:21 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: arnd@...db.de
Cc: ynorov@...iumnetworks.com, catalin.marinas@....com,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-doc@...r.kernel.org, linux-arch@...r.kernel.org,
linux-s390@...r.kernel.org, libc-alpha@...rceware.org,
schwidefsky@...ibm.com, heiko.carstens@...ibm.com,
pinskia@...il.com, broonie@...nel.org, joseph@...esourcery.com,
christoph.muellner@...obroma-systems.com,
bamvor.zhangjian@...wei.com, szabolcs.nagy@....com,
klimov.linux@...il.com, Nathan_Lynch@...tor.com, agraf@...e.de,
Prasun.Kapoor@...iumnetworks.com, kilobyte@...band.pl,
geert@...ux-m68k.org, philipp.tomsich@...obroma-systems.com
Subject: Re: [PATCH 01/23] all: syscall wrappers: add documentation
From: Arnd Bergmann <arnd@...db.de>
Date: Wed, 25 May 2016 23:01:06 +0200
> On Wednesday, May 25, 2016 1:50:39 PM CEST David Miller wrote:
>> From: Arnd Bergmann <arnd@...db.de>
>> Date: Wed, 25 May 2016 22:47:33 +0200
>>
>> > If we use the normal calling conventions, we could remove these overrides
>> > along with the respective special-case handling in glibc. None of them
>> > look particularly performance-sensitive, but I could be wrong there.
>>
>> You could set the lowest bit in the system call entry pointer to indicate
>> the upper-half clears should be elided.
>
> Right, but that would introduce an extra conditional branch in the syscall
> hotpath, and likely eliminate the gains from passing the loff_t arguments
> in a single register instead of a pair.
Ok, then, how much are you really gaining from avoiding a 'shift' and
an 'or' to build the full 64-bit value? 3 cycles? Maybe 4?
And the executing the wrappers, those have a non-trivial cost too.
Cost wise, this seems like it all cancels out in the end, but what
do I know?
Powered by blists - more mailing lists