From: Ingo Molnar <mingo@elte.hu>
To: Ulrich Drepper <drepper@redhat.com>
Cc: Arjan van de Ven <arjan@infradead.org>,
akpm@linux-foundation.org, hugh@veritas.com, linux-mm@kvack.org,
linux-kernel@vger.kernel.org, briangrant@google.com,
cgd@google.com, mbligh@google.com,
Linus Torvalds <torvalds@linux-foundation.org>,
Thomas Gleixner <tglx@linutronix.de>,
"H. Peter Anvin" <hpa@zytor.com>
Subject: Re: pthread_create() slow for many threads; also time to revisit 64b context switch optimization?
Date: Wed, 13 Aug 2008 18:02:18 +0200 [thread overview]
Message-ID: <20080813160218.GB18037@elte.hu> (raw)
In-Reply-To: <48A303EE.8070002@redhat.com>
* Ulrich Drepper <drepper@redhat.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Ingo Molnar wrote:
> > Btw., can you see any problems with option #1: simply removing MAP_32BIT
> > from 64-bit stack allocations in glibc unconditionally?
>
> Yes, as we both agree, there are still such machines out there.
>
> The real problem is: what to do if somebody complains? If we would
> have the extra flag such people could be accommodated. If there is no
> such flag then distributions cannot just add the flag (it's part of
> the kernel API) and they would be caught between a rock and a hard
> place. Option #2 provides the biggest flexibility.
>
> I upstream kernel truly doesn't care about such machines anymore there
> are two options:
>
> - - really do nothing at all
do nothing at all is not an option - thread creation can take 10 msecs
on top-of-the-line hardware.
> - - at least reserve a flag in case somebody wants/has to implement option
> #2
yeah, i already had a patch for that when i wrote my first mail
[attached below] and listed it as option #4 - then erased the comment
figuring that we'd want to do #1 ;-)
As unimplemented flags just get ignored by the kernel, if this flag goes
into v2.6.27 as-is and is ignored by the kernel (i.e. we just use a
plain old 64-bit [47-bit] allocation), then you could do the glibc
change straight away, correct? So then if people complain we can fix it
in the kernel purely.
how about this then?
Ingo
--------------------->
Subject: mmap: add MAP_64BIT_STACK
From: Ingo Molnar <mingo@elte.hu>
Date: Wed Aug 13 12:41:54 CEST 2008
Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
include/asm-x86/mman.h | 1 +
1 file changed, 1 insertion(+)
Index: linux/include/asm-x86/mman.h
===================================================================
--- linux.orig/include/asm-x86/mman.h
+++ linux/include/asm-x86/mman.h
@@ -12,6 +12,7 @@
#define MAP_NORESERVE 0x4000 /* don't check for reservations */
#define MAP_POPULATE 0x8000 /* populate (prefault) pagetables */
#define MAP_NONBLOCK 0x10000 /* do not block on IO */
+#define MAP_64BIT_STACK 0x20000 /* give out 32bit addresses on old CPUs */
#define MCL_CURRENT 1 /* lock all current mappings */
#define MCL_FUTURE 2 /* lock all future mappings */
--
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>
next prev parent reply other threads:[~2008-08-13 16:02 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <af8810200808121736q76640cc1kb814385072fe9b29@mail.gmail.com>
2008-08-13 0:45 ` Pardo
2008-08-13 10:44 ` Ingo Molnar
2008-08-13 13:35 ` Arjan van de Ven
2008-08-13 14:21 ` Ulrich Drepper
2008-08-13 14:25 ` Ingo Molnar
2008-08-13 14:36 ` Ulrich Drepper
2008-08-13 15:10 ` Ingo Molnar
2008-08-13 15:21 ` Ulrich Drepper
2008-08-13 15:40 ` Ingo Molnar
2008-08-13 15:55 ` Ulrich Drepper
2008-08-13 16:02 ` Ingo Molnar [this message]
2008-08-15 15:54 ` Jamie Lokier
2008-08-15 16:03 ` Ingo Molnar
2008-08-15 17:13 ` Ulrich Drepper
2008-08-15 17:19 ` Ingo Molnar
2008-08-15 17:23 ` Ulrich Drepper
2008-08-15 19:00 ` Ingo Molnar
2008-08-13 17:09 ` Linus Torvalds
2008-08-13 18:04 ` Ulrich Drepper
2008-08-13 18:16 ` Arjan van de Ven
2008-08-13 18:22 ` Ulrich Drepper
2008-08-13 16:05 ` H. Peter Anvin
2008-08-13 20:42 ` Andi Kleen
2008-08-13 20:56 ` Andrew Morton
2008-08-13 21:46 ` Andi Kleen
2008-08-15 12:43 ` Ingo Molnar
2008-08-15 13:33 ` Andi Kleen
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=20080813160218.GB18037@elte.hu \
--to=mingo@elte.hu \
--cc=akpm@linux-foundation.org \
--cc=arjan@infradead.org \
--cc=briangrant@google.com \
--cc=cgd@google.com \
--cc=drepper@redhat.com \
--cc=hpa@zytor.com \
--cc=hugh@veritas.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mbligh@google.com \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
/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