Subject: Re: [PATCH-2.6.0-tiny] "uninline" {lock,release}_sock

From: Matt Mackall <[email-masked]>
Date: Sun, 28 Dec 2003 12:42:25 -0600

On Sun, Dec 28, 2003 at 01:23:29AM -0800, David S. Miller wrote:
> On Sun, 28 Dec 2003 00:23:07 -0800 (PST)
> Linus Torvalds <[email-masked]> wrote:
> 
> > Function calls aren't all that expensive, especially with FASTCALL() etc 
> > to show that you don't have to follow the common calling conventions. 
> > Right now I think FASTCALL() only matters on x86, but some other 
> > architectures could make it mean "smaller call clobbered list" or similar.
> > 
> > Have you benchmarked with the smaller kernel? 

The primary benchmark for -tiny is how much space it frees up, which
is very straightforward. More generally, I think we've got something
of a crisis on our hands in terms of benchmarking as caching
architectures are making microbenchmark results worse than worthless
for real life and changes like these are often lost in the noise for
larger benchmarks.
 
> To be honest I think {lock,release}_sock() should both be uninlined
> always.
> 
> It almost made sense to inline these things before the might_sleep()
> was added, now it definitely makes no sense.

For the purposes of my -tiny tree, I'd like to make every new feature
conditional as an aid to footprint measurement, benchmarking, regression
testing, etc. When I start feeding these patches to mainline, they can
be made unconditional as is warranted.

-- 
Matt Mackall : http://www.selenic.com : Linux development and consulting