User: Password:
|
|
Subscribe / Log in / New account

Re: [RFC 2/2] x86_64: expand kernel stack to 16K

From:  Linus Torvalds <torvalds-AT-linux-foundation.org>
To:  Dave Chinner <david-AT-fromorbit.com>
Subject:  Re: [RFC 2/2] x86_64: expand kernel stack to 16K
Date:  Thu, 29 May 2014 08:24:49 -0700
Message-ID:  <CA+55aFx+j4104ZFmA-YnDtyfmV4FuejwmGnD5shfY0WX4fN+Kg@mail.gmail.com>
Cc:  Jens Axboe <axboe-AT-kernel.dk>, Minchan Kim <minchan-AT-kernel.org>, Linux Kernel Mailing List <linux-kernel-AT-vger.kernel.org>, Andrew Morton <akpm-AT-linux-foundation.org>, linux-mm <linux-mm-AT-kvack.org>, "H. Peter Anvin" <hpa-AT-zytor.com>, Ingo Molnar <mingo-AT-kernel.org>, Peter Zijlstra <a.p.zijlstra-AT-chello.nl>, Mel Gorman <mgorman-AT-suse.de>, Rik van Riel <riel-AT-redhat.com>, Johannes Weiner <hannes-AT-cmpxchg.org>, Hugh Dickins <hughd-AT-google.com>, Rusty Russell <rusty-AT-rustcorp.com.au>, "Michael S. Tsirkin" <mst-AT-redhat.com>, Dave Hansen <dave.hansen-AT-intel.com>, Steven Rostedt <rostedt-AT-goodmis.org>
Archive-link:  Article

On Thu, May 29, 2014 at 12:26 AM, Dave Chinner <david@fromorbit.com> wrote:
>
> What concerns me about both __alloc_pages_nodemask() and
> kernel_map_pages is that when I look at the code I see functions
> that have no obvious stack usage problem. However, the compiler is
> producing functions with huge stack footprints and it's not at all
> obvious when I read the code. So in this case I'm more concerned
> that we have a major disconnect between the source code structure
> and the code that the compiler produces...

I agree. In fact, this is the main reason that Minchan's call trace
and this thread has actually convinced me that yes, we really do need
to make x86-64 have a 16kB stack (well, 16kB allocation - there's
still the thread info etc too).

Usually when we see the stack-smashing traces, they are because
somebody did something stupid. In this case, there are certainly
stupid details, and things I think we should fix, but there is *not*
the usual red flag of "Christ, somebody did something _really_ wrong".

So I'm not in fact arguing against Minchan's patch of upping
THREAD_SIZE_ORDER to 2 on x86-64, but at the same time stack size does
remain one of my "we really need to be careful" issues, so while I am
basically planning on applying that patch, I _also_ want to make sure
that we fix the problems we do see and not just paper them over.

The 8kB stack has been somewhat restrictive and painful for a while,
and I'm ok with admitting that it is just getting _too_ damn painful,
but I don't want to just give up entirely when we have a known deep
stack case.

                      Linus

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>



(Log in to post comments)


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