linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
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>

  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