User: Password:
Subscribe / Log in / New account

x86: 4kstacks default

From:  David Chinner <>
To:  Eric Sandeen <>
Subject:  Re: x86: 4kstacks default
Date:  Mon, 21 Apr 2008 08:53:11 +1000
Message-ID:  <>
Cc:  Arjan van de Ven <>, Shawn Bohrer <>, Ingo Molnar <>, Andrew Morton <>, Linux Kernel Mailing List <>, Thomas Gleixner <>
Archive-link:  Article

On Sat, Apr 19, 2008 at 09:36:16PM -0500, Eric Sandeen wrote:
> Arjan van de Ven wrote:
> > On the flipside the arguments tend to be
> > 1) certain stackings of components still runs the risk of overflowing
> > 2) I want to run ndiswrapper
> > 3) general, unspecified uneasyness.
> > 
> > For 1), we need to know which they are, and then solve them, because even on x86-64 with 8k stacks
> > they can be a problem (just because the stack frames are bigger, although not quite double, there).
> Except, apparently, not, at least in my experience.
> Ask the xfs guys if they see stack overflows on x86_64, or on x86.

We see them regularly enough on x86 to know that the first question
to any strange crash is "are you using 4k stacks?". In comparison,
I have never heard of a single stack overflow on x86_64....

> I've personally never seen common stack problems with xfs on x86_64, but
> it's very common on x86.  I don't have a great answer for why, but
> that's my anecdotal evidence.

Why? Because XFS makes extensive use of 64 bit types and so stack
usage in the critical paths changes by a relatively small amount
between 32 bit and 64 bit machines.  IIRC, x86_64 only uses about
30% more stack than x86. So given that the stack doubles on x86_64
and we only increase usage (in XFS) from about 1500 bytes to 2000
bytes of stack usage, we have *lots* more stack space to spare on
x86_64 compared to 4k stacks on x86....


Dave Chinner
Principal Engineer
SGI Australian Software Group

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds