Re: x86: 4kstacks default

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Chris Mason <chris.mason@...>, Christoph Hellwig <hch@...>
Cc: Arjan van de Ven <arjan@...>, T David Chinner <dgc@...>, Benjamin Herrenschmidt <benh@...>, Ingo Molnar <mingo@...>, Andrew Morton <akpm@...>, Linux Kernel Mailing List <linux-kernel@...>, <Th@...>
Date: Thursday, April 24, 2008 - 2:30 pm

On Thu, 24 Apr 2008 11:41:30 -0400, "Chris Mason"
<chris.mason@oracle.com> said:

Hi,

(Rookie warning goes here.) To me, growing the stack at more or less
random places in the kernel seems to be quite a complicated thing to do
and it will be quite a maintainance burden to find the right spots to
insert stack usage checks. So I'ld say: lose the dynamic aspect.

How about unconditionally switching stacks at some defined points within
the core code of the kernel, just before calling into any driver code,
for example? The 4k-option has separate irq stacks already, why not have
driver stacks too?

I think the most important consideration to keep the stack size small
was that non-order-0 allocations are unreliable under/after memory
pressure due to fragmentation and that this allocation has to be done
for each thread. It is therefore preferable not to do any higher-order
allocations at all, unless there is a fall-back mechanism if the
allocation fails. For higher-order stacks there isn't such a fallback...
Can the system get by (without deadlocks at least in practice) with a
limited number of preallocated but 'large' stacks (in addition to a
small per-thread stack)?

It was discussed that stack space is needed for any sleeping process.
Could it be arranged that this waiting happens on the smallish stack, at
least for the most common cases, while non-waiting activity can use the
big stacks?

Greetings,
    Alexander

-- 
  Alexander van Heukelum
  heukelum@fastmail.fm

-- 
http://www.fastmail.fm - A fast, anti-spam email service.

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: x86: 4kstacks default, Andrew Morton, (Fri Apr 18, 5:29 pm)
Re: x86: 4kstacks default, Ingo Molnar, (Sat Apr 19, 10:23 am)
Re: x86: 4kstacks default, Benjamin Herrenschmidt, (Wed Apr 23, 1:27 am)
Re: x86: 4kstacks default, David Chinner, (Wed Apr 23, 7:36 pm)
Re: x86: 4kstacks default, Benjamin Herrenschmidt, (Wed Apr 23, 8:56 pm)
Re: x86: 4kstacks default, Arjan van de Ven, (Wed Apr 23, 8:45 pm)
Re: x86: 4kstacks default, Christoph Hellwig, (Thu Apr 24, 5:52 am)
Re: x86: 4kstacks default, Chris Mason, (Thu Apr 24, 11:41 am)
Re: x86: 4kstacks default, Alexander van Heukelum, (Thu Apr 24, 2:30 pm)
Re: x86: 4kstacks default, Peter Zijlstra, (Thu Apr 24, 8:25 am)
Re: x86: 4kstacks default, Oliver Pinter, (Sat Apr 19, 10:35 am)
Re: x86: 4kstacks default, Adrian Bunk, (Sat Apr 19, 11:19 am)
Re: x86: 4kstacks default, Oliver Pinter, (Sat Apr 19, 11:42 am)
Re: x86: 4kstacks default, Eric Sandeen, (Sat Apr 19, 9:56 pm)
Re: x86: 4kstacks default, Adrian Bunk, (Sun Apr 20, 3:42 am)
Re: x86: 4kstacks default, Chris Wedgwood, (Sun Apr 20, 12:59 pm)
Re: x86: 4kstacks default, Eric Sandeen, (Sat Apr 19, 11:29 pm)
Re: x86: 4kstacks default, Ingo Molnar, (Mon Apr 21, 10:31 am)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 8:36 am)
Re: x86: 4kstacks default, Shawn Bohrer, (Sat Apr 19, 10:59 am)
Re: x86: 4kstacks default, Adrian Bunk, (Sun Apr 20, 4:09 am)
Re: x86: 4kstacks default, Alan Cox, (Sun Apr 20, 4:06 am)
Re: x86: 4kstacks default, Adrian Bunk, (Sun Apr 20, 4:51 am)
Re: x86: 4kstacks default, Alan Cox, (Sun Apr 20, 5:36 am)
Re: x86: 4kstacks default, Adrian Bunk, (Sun Apr 20, 6:44 am)
Re: x86: 4kstacks default, Mark Lord, (Sun Apr 20, 9:22 am)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 8:27 am)
Re: x86: 4kstacks default, Daniel Hazelton, (Sun Apr 20, 11:44 am)
Re: x86: 4kstacks default, Romano Giannetti, (Tue Apr 22, 2:20 pm)
Re: x86: 4kstacks default, Denys Vlasenko, (Wed Apr 23, 1:03 am)
Re: x86: 4kstacks default, Daniel Hazelton, (Wed Apr 23, 1:21 am)
Re: x86: 4kstacks default, , (Wed Apr 23, 1:25 am)
Re: x86: 4kstacks default, Daniel Hazelton, (Wed Apr 23, 1:41 am)
Re: x86: 4kstacks default, Romano Giannetti, (Wed Apr 23, 3:46 am)
Re: x86: 4kstacks default, Stefan Richter, (Wed Apr 23, 7:24 am)
Re: x86: 4kstacks default, Romano Giannetti, (Wed Apr 23, 8:15 am)
Re: x86: 4kstacks default, Lennart Sorensen, (Wed Apr 23, 11:59 am)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 1:26 pm)
Re: x86: 4kstacks default, Arjan van de Ven, (Sun Apr 20, 2:48 pm)
Re: x86: 4kstacks default, Andrew Morton, (Sun Apr 20, 5:45 pm)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 5:51 pm)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 4:01 pm)
Re: x86: 4kstacks default, Arjan van de Ven, (Sun Apr 20, 6:33 pm)
Re: x86: 4kstacks default, Arjan van de Ven, (Sun Apr 20, 6:33 pm)
Re: x86: 4kstacks default, Eric Sandeen, (Sun Apr 20, 11:06 pm)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 7:16 pm)
Re: x86: 4kstacks default, Arjan van de Ven, (Mon Apr 21, 1:53 am)
Re: x86: 4kstacks default, Daniel Hazelton, (Sun Apr 20, 4:43 pm)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 5:40 pm)
Re: x86: 4kstacks default, Daniel Hazelton, (Sun Apr 20, 9:45 pm)
Re: x86: 4kstacks default, Andi Kleen, (Mon Apr 21, 3:51 am)
Re: x86: 4kstacks default, Daniel Hazelton, (Mon Apr 21, 1:34 pm)
Re: x86: 4kstacks default, Bernd Eckenfels, (Sun Apr 20, 6:17 pm)
Re: x86: 4kstacks default, Avi Kivity, (Sun Apr 20, 7:48 pm)
Re: x86: 4kstacks default, Willy Tarreau, (Sun Apr 20, 8:47 am)
Re: x86: 4kstacks default, Mark Lord, (Sun Apr 20, 9:27 am)
Re: x86: 4kstacks default, Eric Sandeen, (Sun Apr 20, 10:09 am)
Re: x86: 4kstacks default, Willy Tarreau, (Sun Apr 20, 10:20 am)
Re: x86: 4kstacks default, Eric Sandeen, (Sun Apr 20, 10:40 am)
Re: x86: 4kstacks default, Willy Tarreau, (Sun Apr 20, 9:38 am)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 10:19 am)
Re: x86: 4kstacks default, Jörn, (Sun Apr 20, 12:41 pm)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 1:19 pm)
Re: x86: 4kstacks default, Jörn, (Sun Apr 20, 1:43 pm)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 2:19 pm)
Re: x86: 4kstacks default, Jörn, (Sun Apr 20, 4:35 pm)
Re: x86: 4kstacks default, Jörn, (Sun Apr 20, 4:32 pm)
Re: x86: 4kstacks default, Arjan van de Ven, (Sun Apr 20, 2:50 pm)
Re: x86: 4kstacks default, Andrew Morton, (Sun Apr 20, 5:50 pm)
Re: x86: 4kstacks default, Ingo Molnar, (Mon Apr 21, 10:29 am)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 5:55 pm)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 4:09 pm)
Re: x86: 4kstacks default, Adrian Bunk, (Sun Apr 20, 9:21 am)
Re: x86: 4kstacks default, Bill Davidsen, (Mon Apr 28, 2:38 pm)
Re: x86: 4kstacks default, Helge Hafting, (Wed Apr 23, 5:13 am)
Re: x86: 4kstacks default, Eric Sandeen, (Thu Apr 24, 11:46 am)
Re: x86: 4kstacks default, David Chinner, (Wed Apr 23, 7:29 pm)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 9:06 am)
Re: x86: 4kstacks default, Adrian Bunk, (Sun Apr 20, 9:30 am)
Re: x86: 4kstacks default, Bill Davidsen, (Mon Apr 28, 1:56 pm)
Re: x86: 4kstacks default, Willy Tarreau, (Sun Apr 20, 9:34 am)
Re: x86: 4kstacks default, Adrian Bunk, (Sun Apr 20, 10:04 am)
Re: x86: 4kstacks default, Adrian Bunk, (Sun Apr 20, 8:32 am)
Re: x86: 4kstacks default, Alan Cox, (Sun Apr 20, 7:02 am)
Re: x86: 4kstacks default, Adrian Bunk, (Sun Apr 20, 7:54 am)
Re: x86: 4kstacks default, Andi Kleen, (Sun Apr 20, 8:37 am)
Re: x86: 4kstacks default, Alan Cox, (Sun Apr 20, 7:37 am)
Re: x86: 4kstacks default, Adrian Bunk, (Sun Apr 20, 8:18 am)
Re: x86: 4kstacks default, Eric Sandeen, (Sun Apr 20, 10:05 am)
Re: x86: 4kstacks default, Denys Vlasenko, (Mon Apr 21, 3:45 am)
Re: x86: 4kstacks default, Eric Sandeen, (Mon Apr 21, 9:29 am)
Re: x86: 4kstacks default, Denys Vlasenko, (Mon Apr 21, 3:51 pm)
Re: x86: 4kstacks default, David Chinner, (Mon Apr 21, 9:28 pm)
Re: x86: 4kstacks default, Jörn, (Sun Apr 27, 3:27 pm)
Re: x86: 4kstacks default, Denys Vlasenko, (Sun Apr 27, 7:02 pm)
Re: x86: 4kstacks default, Eric Sandeen, (Sun Apr 27, 7:08 pm)
Re: x86: 4kstacks default, Denys Vlasenko, (Sun Apr 27, 8:00 pm)
Re: x86: 4kstacks default, Denys Vlasenko, (Tue Apr 22, 8:48 am)
Re: x86: 4kstacks default, Adrian Bunk, (Tue Apr 22, 9:01 am)
Re: x86: 4kstacks default, Denys Vlasenko, (Tue Apr 22, 9:51 am)
[PATCH] xfs: do not pass size into kmem_free, it's unused, Denys Vlasenko, (Mon Apr 21, 10:33 pm)
[PATCH] xfs: do not pass unused params to xfs_flush_pages, Denys Vlasenko, (Mon Apr 21, 11:03 pm)
[PATCH] xfs: remove unused parameter of xfs_qm_dqpurge, Denys Vlasenko, (Tue Apr 22, 5:42 am)
Re: [PATCH] xfs: remove unused parameter of xfs_qm_dqpurge, Christoph Hellwig, (Wed Apr 23, 4:18 am)
Re: [PATCH] xfs: #define out unused parameters , Denys Vlasenko, (Tue Apr 22, 4:46 pm)
Re: [PATCH] xfs: #define out unused parameters , Denys Vlasenko, (Tue Apr 22, 1:50 pm)
[PATCH] xfs: expose no-op xfs_put_perag(), Denys Vlasenko, (Tue Apr 22, 9:46 am)
Re: [PATCH] xfs: expose no-op xfs_put_perag(), David Chinner, (Tue Apr 22, 7:16 pm)
Re: [PATCH] xfs: expose no-op xfs_put_perag(), Eric Sandeen, (Tue Apr 22, 10:08 am)
Re: x86: 4kstacks default, Denys Vlasenko, (Mon Apr 21, 4:28 pm)
Re: x86: 4kstacks default, Andi Kleen, (Mon Apr 21, 5:55 am)
Re: x86: 4kstacks default, Arjan van de Ven, (Sun Apr 20, 11:41 am)
Re: x86: 4kstacks default, Adrian Bunk, (Sun Apr 20, 12:03 pm)
Re: x86: 4kstacks default, Alexander E. Patrakov, (Sun Apr 20, 11:30 pm)
Re: x86: 4kstacks default, Helge Hafting, (Wed Apr 23, 4:57 am)
Re: x86: 4kstacks default, Adrian Bunk, (Sun Apr 20, 10:21 am)
Re: x86: 4kstacks default, Eric Sandeen, (Sun Apr 20, 10:56 am)
Re: x86: 4kstacks default, Arjan van de Ven, (Sat Apr 19, 2:00 pm)
Re: x86: 4kstacks default, Eric Sandeen, (Sat Apr 19, 10:36 pm)
Re: x86: 4kstacks default, David Chinner, (Sun Apr 20, 6:53 pm)
Re: x86: 4kstacks default, Arjan van de Ven, (Sun Apr 20, 2:11 am)
Re: x86: 4kstacks default, Ingo Molnar, (Sat Apr 19, 2:33 pm)
Re: x86: 4kstacks default, Stefan Richter, (Sat Apr 19, 3:10 pm)
Re: x86: 4kstacks default, Andrew Morton, (Sat Apr 19, 1:49 pm)