public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Adrian Bunk <bunk@stusta.de>
To: Neil Brown <neilb@suse.de>
Cc: Dave Jones <davej@redhat.com>, Andrew Morton <akpm@osdl.org>,
	linux-kernel@vger.kernel.org, arjan@infradead.org,
	xfs-masters@oss.sgi.com, nathans@sgi.com,
	joern@wohnheim.fh-wedel.de
Subject: Re: [2.6 patch] i386: always use 4k stacks
Date: Mon, 19 Dec 2005 02:34:29 +0100	[thread overview]
Message-ID: <20051219013429.GS23349@stusta.de> (raw)
In-Reply-To: <17318.676.931250.379882@cse.unsw.edu.au>

On Mon, Dec 19, 2005 at 11:45:24AM +1100, Neil Brown wrote:
> On Friday December 16, bunk@stusta.de wrote:
> > 
> > The nfsd code uses inline in too many places.
> 
> Does it?
> Most of the uses are either
>  - truly tiny bits of code

That's OK if they stay tiny and don't grow as time passes by.

>  - code that is used only once which, as you as, will not currently 
>    be auto-inlined on i386, so we do it by hand.

That's OK if it isn't forgotten to un-inline them when they get more 
callers.

Unfortunately, people often don't check whether an "inline" is still 
appropriate when the code evolves.

Unless this is an extreme hot path, it's therefore IMHO not a good idea 
to use "inline" in such cases.

Additionally, it's a medium-term goal for me to re-enable unit-at-a-time 
on i386 for recent gcc's.

> An exception is some of the xdr code.
> If I 
>   #define inline
> in nfs3xdr.c, the nfsd.o changes from 
>    text    data     bss     dec     hex filename
>   76132    3464    2408   82004   14054 ../mm-i386/fs/nfsd/nfsd.o
> to
>    text    data     bss     dec     hex filename
>   72452    3464    2408   78324   131f4 ../mm-i386/fs/nfsd/nfsd.o
> which is probably a win.
> 
> Is that what you were referring to?

I didn't had one specific example in mind, but yes this seems to be an 
example for inline's that might have been reasonable at one time in the 
past, but are no longer today.

> > If this struct is really a problem (which I doubt considering it's 
> > size), I'd prefer it being kmalloc'ed.
> 
> It's hard to *know* if it is a problem, but I am conscious that nfsd
> adds measurably to stack depth for filesystem paths, and probably
> isn't measured nearly as often.
> It's true that 50 bytes out of 4K isn't a lot, but wastage that can be
> avoided, should be avoided.

"make checkstack" tells that nfsd_vfs_write is below 100 bytes of stack 
usage. So even calling 30 such functions would not get you above
3 kB stack usage.

It's also interesting that according to Jörn Engel's static analysis of 
call paths in kernel 2.6.11 [1], the string "nfs" does occur in neither 
any of the functions involved in call paths with > 2 kB stack usage, nor 
in any recursive call paths.

It's OK to use some bytes from the stack, and you haven't yet convinced 
me that the code you are responsible for is using too much stack.  ;-)

> NeilBrown

cu
Adrian

[1] http://wh.fh-wedel.de/~joern/stackcheck.2.6.11

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed


  reply	other threads:[~2005-12-19  1:34 UTC|newest]

Thread overview: 275+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-15 21:24 [2.6 patch] i386: always use 4k stacks Adrian Bunk
2005-12-15 22:00 ` Andrew Morton
2005-12-15 20:42   ` Jeff V. Merkey
2005-12-15 22:30   ` Adrian Bunk
2005-12-15 21:07     ` Jeff V. Merkey
2005-12-15 23:14       ` Lee Revell
2005-12-15 21:46         ` Jeff V. Merkey
2005-12-15 23:26           ` Lee Revell
2005-12-15 22:04             ` Jeff V. Merkey
2005-12-15 23:36               ` Ismail Donmez
2005-12-16  0:08               ` Fri, 16 Dec 2005 01:08:02 +0100
2005-12-15 22:51                 ` Jeff V. Merkey
2005-12-16  0:57                 ` Michael Buesch
2005-12-16  0:38               ` Alan Cox
2005-12-16 14:39             ` linux-os (Dick Johnson)
2005-12-16 14:49               ` Xavier Bestel
2005-12-16 15:01               ` Adrian Bunk
2005-12-16 18:42               ` Horst von Brand
2005-12-16 18:53                 ` Oliver Neukum
2005-12-16 18:53                 ` Brian Gerst
2005-12-16 19:02                   ` Arjan van de Ven
2005-12-16 19:14                     ` Oliver Neukum
2005-12-16 18:55                 ` Steven Rostedt
2005-12-17  0:16                   ` Horst von Brand
2005-12-19  9:40                     ` Helge Hafting
2005-12-16 19:26                 ` linux-os (Dick Johnson)
2005-12-16 21:08                   ` David Lang
2005-12-16 21:35                     ` linux-os (Dick Johnson)
2005-12-19  9:02               ` Helge Hafting
2005-12-16  0:37         ` Ray Lee
2005-12-19  8:55           ` Helge Hafting
2005-12-15 23:15     ` Dave Jones
2005-12-16  0:47       ` Adrian Bunk
2005-12-16  0:50         ` Dave Jones
2005-12-16  2:56           ` Neil Brown
2005-12-16  3:06             ` Dave Jones
2005-12-16 12:18             ` Adrian Bunk
2005-12-16 19:03               ` Horst von Brand
2005-12-19  0:45               ` Neil Brown
2005-12-19  1:34                 ` Adrian Bunk [this message]
2005-12-19 11:40                   ` Jörn Engel
2005-12-16  1:15         ` Nathan Scott
2005-12-16  1:37           ` Dave Jones
2005-12-16  1:49     ` Zwane Mwaikambo
2005-12-16 14:12       ` Adrian Bunk
2005-12-16 13:10   ` Diego Calleja
2005-12-16 14:04     ` Adrian Bunk
2005-12-16 15:35       ` Diego Calleja
2005-12-16 15:49         ` Kyle Moffett
2005-12-16 16:23           ` Michael Buesch
2005-12-16 20:02             ` Alan Cox
2005-12-16 20:08               ` Arjan van de Ven
2005-12-16 18:18           ` Giridhar Pemmasani
2005-12-16 18:36             ` Arjan van de Ven
2005-12-16 19:32               ` Mike Snitzer
2005-12-16 19:46                 ` Arjan van de Ven
2005-12-16 21:28                   ` Mike Snitzer
2005-12-16 21:49                     ` Arjan van de Ven
2005-12-16 21:50                     ` Adrian Bunk
2005-12-16 22:14                       ` Dave Jones
2005-12-17 17:44           ` Andi Kleen
2005-12-17 20:16             ` Kyle Moffett
2005-12-17 20:23               ` Paul Rolland
2005-12-17 20:47                 ` Arjan van de Ven
2005-12-17 20:52             ` Adrian Bunk
2005-12-18  2:35               ` Andi Kleen
2005-12-18  5:03               ` Parag Warudkar
2005-12-18  5:43                 ` Andi Kleen
2005-12-18  6:05                   ` Parag Warudkar
2005-12-18 15:51                     ` Adrian Bunk
2005-12-18 15:59                       ` Parag Warudkar
2005-12-19 11:09                     ` Helge Hafting
2005-12-19 16:22                       ` Parag Warudkar
2005-12-19 17:43                         ` Dumitru Ciobarcianu
2005-12-19 19:10                           ` Parag Warudkar
2005-12-19 19:27                             ` Dumitru Ciobarcianu
2005-12-19 20:17                               ` Parag Warudkar
2005-12-19 20:34                                 ` Dumitru Ciobarcianu
2005-12-20  1:24                                   ` Tue, 20 Dec 2005 02:24:16 +0100
2005-12-20 14:28                                 ` Horst von Brand
2005-12-20 17:56                                   ` David Lang
2005-12-20 18:09                                     ` Arjan van de Ven
2005-12-20 18:49                                       ` David Lang
2005-12-21 11:12                                       ` Sander
2005-12-21 20:03                                         ` Jeffrey Hundstad
2005-12-20 18:12                                     ` Adrian Bunk
     [not found]                                     ` <55454.10.10.10.28.1135102356.squirrel@linux1>
2005-12-20 18:12                                       ` Sean
2005-12-20 18:23                                     ` Dave Jones
2005-12-20 12:58                             ` Adrian Bunk
2005-12-20 14:35                             ` Felix Oxley
2005-12-18 15:44                   ` Adrian Bunk
2005-12-18 12:09                 ` Adrian Bunk
2005-12-18 15:49                   ` Parag Warudkar
2005-12-18 15:57                     ` Adrian Bunk
2005-12-18 16:04                       ` Parag Warudkar
2005-12-16 15:58         ` Adrian Bunk
2005-12-16 16:46     ` Arjan van de Ven
     [not found]       ` <170fa0d20512160902g26eefc2eua519617d3e760de@mail.gmail.com>
2005-12-16 17:17         ` Fwd: " Mike Snitzer
2005-12-16 19:59           ` Alan Cox
  -- strict thread matches above, loose matches on Subject: below --
2006-02-11 23:26 Joshua Hudson
     [not found] <5lQOU-492-31@gated-at.bofh.it>
     [not found] ` <5lQOU-492-29@gated-at.bofh.it>
2005-12-23 10:12   ` Bodo Eggert
2005-12-23 10:29     ` Eric Dumazet
     [not found]     ` <38510.10.10.10.28.1135334691.squirrel@linux1>
2005-12-23 10:44       ` Sean
2005-12-23 13:59     ` Diego Calleja
2005-12-23 23:08     ` Pavel Machek
2005-12-24  1:06     ` Horst von Brand
2005-12-20 19:53 Parag Warudkar
     [not found] ` <122020051953.9002.43A861470004E9E70000232A220702095300009A9B9CD3040A0 29D0A05@comcast.net>
     [not found]   ` <58575.10.10.10.28.1135109038.squirrel@linux1>
2005-12-20 20:03     ` Sean
2005-12-20 20:27 ` Jesper Juhl
2005-12-20 22:08 ` Horst von Brand
2005-12-20 19:08 Parag Warudkar
2005-12-20 19:25 ` David Lang
2005-12-20 21:37 ` Horst von Brand
2005-12-18 10:49 Stefan Rompf
2005-12-18 12:06 ` Alan Cox
     [not found] <5k8PZ-4xt-9@gated-at.bofh.it>
     [not found] ` <5k9sD-5yh-13@gated-at.bofh.it>
     [not found]   ` <5knFp-kU-51@gated-at.bofh.it>
     [not found]     ` <5korL-1xX-33@gated-at.bofh.it>
     [not found]       ` <5kpRh-3sK-11@gated-at.bofh.it>
     [not found]         ` <5kq0L-3FB-37@gated-at.bofh.it>
     [not found]           ` <5kOma-4K1-23@gated-at.bofh.it>
     [not found]             ` <5kRk3-xO-11@gated-at.bofh.it>
2005-12-18  5:57               ` Bodo Eggert
2005-12-18 12:28                 ` Adrian Bunk
2005-12-18 13:44                   ` Michael Poole
2005-12-18 14:12                     ` Adrian Bunk
2005-12-17  6:53 Alex Davis
     [not found] <200512161903.jBGJ3EnR003647@quelen.inf.utfsm.cl>
2005-12-17  0:17 ` Horst von Brand
2005-12-18 23:10   ` Neil Brown
2005-12-16 15:36 Matt Reuther
     [not found] <5kh6K-7KC-3@gated-at.bofh.it>
     [not found] ` <5kiFR-1mi-11@gated-at.bofh.it>
2005-12-16 11:05   ` Bodo Eggert
2005-12-16 12:22     ` Denis Vlasenko
2005-12-16 18:08     ` Dave Jones
2005-12-17 10:26       ` Bodo Eggert
2005-12-16 19:25     ` Lee Revell
2005-12-17  3:47       ` Bodo Eggert
     [not found] <EC9B7A4A-2CD2-4EA4-B9B3-D35F8F5DFA4B@mac.com>
2005-12-16  8:48 ` Alex Davis
2005-12-16  9:38   ` Kyle Moffett
2005-12-16 14:45     ` Alex Davis
2005-12-16 15:11       ` Kyle Moffett
2005-12-16  5:20 Alex Davis
2005-12-16  5:29 ` Dave Jones
2005-12-16  6:16   ` Alex Davis
2005-12-16  7:41     ` Pekka Enberg
2005-12-16  7:43     ` Kyle Moffett
2005-12-16  7:53     ` Kyle Moffett
2005-12-16  8:02     ` Arjan van de Ven
2005-12-27 21:03     ` David Weinehall
2005-12-27 22:26       ` Michael Buesch
2005-12-16  8:10 ` Matt Domsch
2005-12-11 18:05 Adrian Bunk
2005-12-15 22:57 ` Jan Engelhardt
2005-12-15 23:12   ` Ismail Donmez
2005-12-16  3:51     ` Puneet Vyas
2005-12-16  7:55       ` Pekka Enberg
2005-12-19  9:27         ` Helge Hafting
2005-12-19  9:27       ` Helge Hafting
2005-12-15 23:13   ` Lee Revell
2005-12-16  0:36   ` Alan Cox
2005-12-05 21:45 Alex Davis
2005-12-05 23:45 ` Helge Hafting
2005-12-05 21:35 Adrian Bunk
2005-11-30 13:16 Adrian Bunk
2005-11-23 22:34 Adrian Bunk
2005-11-17 12:31 Kenneth Parrish
2005-11-17 12:17 Kenneth Parrish
2005-11-30 10:31 ` Eric W. Biederman
2005-11-30 11:49   ` Jörn Engel
2005-11-16  2:03 Kenneth Parrish
2005-11-16 18:38 ` Adrian Bunk
2005-11-15 23:41 Wed, 16 Nov 2005 00:41:11 +0100
2005-11-15 23:56 ` Parag Warudkar
2005-11-16  6:54   ` Arjan van de Ven
2005-11-16  9:04 ` Bernd Petrovitsch
2005-11-16 18:34   ` Adrian Bunk
2005-11-16 20:38   ` Krzysztof Halasa
     [not found] <58XuN-29u-17@gated-at.bofh.it>
     [not found] ` <58XuN-29u-19@gated-at.bofh.it>
     [not found]   ` <58XuN-29u-21@gated-at.bofh.it>
     [not found]     ` <58XuN-29u-23@gated-at.bofh.it>
     [not found]       ` <58XuN-29u-25@gated-at.bofh.it>
     [not found]         ` <58XuN-29u-15@gated-at.bofh.it>
     [not found]           ` <58YAt-3Fs-5@gated-at.bofh.it>
     [not found]             ` <58ZGo-5ba-13@gated-at.bofh.it>
     [not found]               ` <5909m-5JB-5@gated-at.bofh.it>
2005-11-15  4:08                 ` Robert Hancock
2005-11-15  3:56                   ` Jeff V. Merkey
2005-11-15  4:31                     ` Robert Hancock
2005-11-15  4:11                       ` Jeff V. Merkey
2005-11-15  9:31                       ` Bernd Petrovitsch
2005-11-15  9:45                         ` Arjan van de Ven
2005-11-15 16:36                           ` Jeffrey V. Merkey
2005-11-15 19:49                             ` Meelis Roos
2005-11-15 16:39                           ` Cal Peake
2005-11-17 19:32                     ` Bill Davidsen
     [not found]             ` <59ecB-15H-13@gated-at.bofh.it>
     [not found]               ` <59htx-69E-13@gated-at.bofh.it>
     [not found]                 ` <5acUX-PU-31@gated-at.bofh.it>
2005-11-18 13:06                   ` Bodo Eggert
2005-11-18 18:37                     ` Bill Davidsen
     [not found] <58MJb-2Sn-37@gated-at.bofh.it>
     [not found] ` <58NvO-46M-23@gated-at.bofh.it>
     [not found]   ` <58Rpx-1m6-11@gated-at.bofh.it>
     [not found]     ` <58UGF-6qR-27@gated-at.bofh.it>
     [not found]       ` <58UQf-6Da-3@gated-at.bofh.it>
2005-11-15  1:02         ` Robert Hancock
2005-11-15  2:07           ` Lee Revell
2005-11-15  2:22             ` Robert Hancock
2005-11-15  3:27             ` Giridhar Pemmasani
2005-11-15  3:28             ` Dave Jones
2005-11-15  3:26               ` Jeff V. Merkey
2005-11-15  5:06                 ` Dave Jones
2005-11-15  6:19                   ` Jeff V. Merkey
2005-11-15  6:52                     ` Neil Brown
2005-11-15  6:47                       ` Jeff V. Merkey
2005-11-15 13:18                         ` Tue, 15 Nov 2005 14:18:51 +0100
2005-11-15 13:24                           ` Arjan van de Ven
2005-11-15 16:46                             ` Giridhar Pemmasani
2005-11-15 18:55                               ` Adrian Bunk
2005-11-15 22:27                                 ` Giridhar Pemmasani
2005-11-15 23:20                                   ` Adrian Bunk
2005-11-18 11:40                                   ` Denis Vlasenko
2005-11-18 19:51                                     ` Giridhar Pemmasani
2005-11-18 23:32                                     ` Giridhar Pemmasani
2005-11-17 19:25                                 ` Bill Davidsen
2005-11-17 21:34                                   ` Giridhar Pemmasani
2005-11-19  1:33                                 ` Rob Landley
2005-11-19  2:02                                   ` Lee Revell
2005-11-19  2:43                                     ` Rob Landley
2005-11-19  3:22                                       ` Lee Revell
2005-11-19  3:38                                         ` Rob Landley
2005-11-19  5:26                                           ` Dave Jones
2005-11-17 14:11                               ` Rob Landley
2005-11-18 19:27                     ` Alan Cox
2005-11-18 20:05                       ` Jeff V. Merkey
2005-11-14 13:38 Alex Davis
2005-11-14 14:49 ` Alan Cox
2005-11-14 18:02   ` Alistair John Strachan
2005-11-14 18:12     ` Arjan van de Ven
2005-11-14 18:18     ` Dave Jones
2005-11-14 18:22       ` Alistair John Strachan
2005-11-14 18:29         ` Arjan van de Ven
2005-11-14 18:38           ` Alistair John Strachan
2005-11-14 19:17           ` Linus Torvalds
2005-11-14 19:28             ` Michael Buesch
2005-11-14 21:16               ` Rafael J. Wysocki
2005-11-14 20:27     ` Alan Cox
2005-11-16  0:50       ` Alex Davis
2005-11-16  4:05         ` Cal Peake
2005-11-16  8:03         ` Arjan van de Ven
2005-11-16  8:34           ` Oliver Neukum
2005-11-16  9:19             ` Ingo Molnar
2005-11-16 10:18           ` Wed, 16 Nov 2005 11:18:12 +0100
2005-11-16 10:40             ` Arjan van de Ven
2005-11-16 12:57               ` Andi Kleen
2005-11-16 13:51                 ` Jörn Engel
2005-11-16 14:42                   ` jmerkey
2005-11-16 15:18                     ` Jörn Engel
2005-11-16 15:30                     ` Oliver Neukum
2005-11-16 15:38                       ` Arjan van de Ven
2005-11-16 16:10                         ` Andi Kleen
2005-11-16 18:45                           ` Adrian Bunk
2005-11-16 19:03                             ` Benjamin LaHaise
2005-11-16 19:08                               ` Andi Kleen
2005-11-16 20:46                               ` Wed, 16 Nov 2005 21:46:05 +0100
2005-11-17  2:01                                 ` Andi Kleen
2005-11-17  0:06                             ` Jörn Engel
2005-11-16 22:50                               ` Jeffrey V. Merkey
2005-11-16 22:54                                 ` Jeffrey V. Merkey
2005-11-17  0:28                                   ` Jörn Engel
2005-11-17  4:06                                     ` Jeff V. Merkey
2005-11-17  0:31                                   ` Adrian Bunk
2005-11-17  4:05                                     ` Jeff V. Merkey
2005-11-14 18:29   ` Giridhar Pemmasani
2005-11-14 19:00     ` Olivier Galibert
2005-11-14 19:18       ` Benjamin LaHaise
2005-11-14 19:47         ` Giridhar Pemmasani
2005-11-14 22:33     ` Alan Cox
2005-11-14 22:14       ` Giridhar Pemmasani
2005-11-15 15:12     ` Paulo Marques
2005-11-15  1:09   ` Alex Davis
2005-11-14  2:11 Adrian Bunk
2005-11-14  7:50 ` Arjan van de Ven
2005-11-14 10:20 ` Pierre Ossman
2005-11-14 10:31   ` Arjan van de Ven
2005-11-14 10:39     ` Pierre Ossman
2005-11-14 11:11     ` Jens Axboe
2005-11-14 11:19       ` Arjan van de Ven
2005-11-14 11:24         ` Jens Axboe
2005-11-14 11:27           ` Arjan van de Ven
2005-11-14 11:34             ` Jens Axboe
2005-11-14 11:53               ` Arjan van de Ven
2005-11-14 12:00                 ` Pierre Ossman
2005-11-14 12:04                 ` Olivier Galibert
2005-11-14 12:58                   ` Alan Cox
2005-11-15  0:32                   ` Mike Christie
2005-11-15  0:55                     ` Mike Christie
2005-11-15  0:58                     ` Olivier Galibert
2005-11-15  2:42                       ` Mike Christie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20051219013429.GS23349@stusta.de \
    --to=bunk@stusta.de \
    --cc=akpm@osdl.org \
    --cc=arjan@infradead.org \
    --cc=davej@redhat.com \
    --cc=joern@wohnheim.fh-wedel.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nathans@sgi.com \
    --cc=neilb@suse.de \
    --cc=xfs-masters@oss.sgi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox