mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Joe Korty <joe.korty@ccur.com>
To: "j.random.programmer" <javadesigner@yahoo.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Threading behavior in 2.6.5 may be broken ?
Date: Tue, 15 Jun 2004 16:40:59 -0400	[thread overview]
Message-ID: <20040615204059.GA21301@tsunami.ccur.com> (raw)
In-Reply-To: <20040610041641.80112.qmail@web14202.mail.yahoo.com>

On Wed, Jun 09, 2004 at 09:16:41PM -0700, j.random.programmer wrote:
> Hi all:
> 
> I just installed Fedora Core 2 (2.6.5.x smp 
> kernel) on a Dual 1 Ghz P4 server with about 
> 1.5 GB of RAM and about 1.4 GB of swap. 
> 
> I am primarily a web/database developer, not 
> a C programmer so I am writing this email from
> an end-user's perspective.
> 
> I have a program that tries to create as many
> threads as possible. This program was written by me 
> for kicks/testing -- just to see what would happen.
> I ssh into the server and run this program as root
> under the sun 1.4.2 JDK.
> 
> On a 2.4.x kernel, from a Java JVM I could create
> about 900 threads before the JVM crapped out with
> a "cannot create more threads" type of error. Before
> this point, I can create/run - say 700 threads - just
> fine. This is good -- a clean failure at some point
> and good behavior before then.
> 
> On this new kernel, the system gets totally wedged
> when I run the same program and try to create
> 10,000 threads. Instead of getting a "cannot
> create more threads" error, I now get an "out of
> memory" error. Then the command line freezes in
> the existing terminal window, ctrl+c does not work
> (no matter how many times it's pressed), I cannot
> launch another ssh session and cannot ssh into the
> server again (although ping still works).
> 
> To recap:
> 
> [2.4.x]
> 700 threads --> fine
> 10,000 threads --> crap out at 900 something. 
> 
> [2.6.5]
> 700 threads --> fine
> 10,000 threads --> system wedged totally. 

It's funny you should post this, I just encountered the
same thing a few days ago, and found the cause a few
minutes ago.

The problem is that 2.6.x restricts unpinned mmaps (mmaps
where the app does not supply the virtual address) to the
400000000-c000000000 range, while redhat allows all holes
in the user address space to satisfy such requests.

RedHat implements this by introducing an i386-specific
version of arch_get_unmapped_area().  This has not
yet made it to the official kernels.  I have no idea
if it was ever submitted for consideration, or was
submitted and rejected.

Regards,
Joe

  reply	other threads:[~2004-06-15 20:42 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-06-10  4:16 j.random.programmer
2004-06-15 20:40 ` Joe Korty [this message]
2004-06-10  5:31 j.random.programmer
2004-06-10 18:31 j.random.programmer

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=20040615204059.GA21301@tsunami.ccur.com \
    --to=joe.korty@ccur.com \
    --cc=javadesigner@yahoo.com \
    --cc=linux-kernel@vger.kernel.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

all inboxes | Powered by JetHome®