Request for approval: 6929067: Stack guard pages should be removed when thread is detached

Andrew Haley aph at
Mon Aug 16 01:42:39 PDT 2010

On 08/16/2010 03:46 AM, David Holmes wrote:
> Looking further into this, isn't the only thread that can be affected by
> this the main thread? So we could perform this only if
> os::is_initial_thread() returns true?

I suppose we could, yes.  I wonder if it'd be a latent bug to assume
that Java threads could never use growable mappings, though.  Doing
this makes the system a bit less robust.

Do you really think that the cost of get_stack_bounds() is significant in
the context of terminating a thread?


> David Holmes said the following on 08/16/10 11:43:
>> Andrew, Coleen,
>> Andrew Haley said the following on 03/12/10 19:44:
>>> On 03/11/2010 09:06 PM, Coleen Phillimore wrote:
>>>> I've added the test to the changeset and a script to run in our
>>>> harness.
>>>> Also in os_linux.cpp, I changed the SYS_gettid call to go through our
>>>> os::Linux::gettid() because on at least one linux, syscall() returns a
>>>> long int which gets a compilation warning with %d.
>>>> open webrev at
>>>> bug link at
>>>> Andrew, please have a look since you're the contributor.
>>> That's OK, but you don't need SYS_gettid.
>>> Please look at
>>> I changed to "/proc/self/maps", as you requested.  I think this is
>>> better.
>> It looks like the use of /proc/self/maps can be a thread termination
>> bottleneck. Is there a way to determine whether this functionality is
>> needed for the current thread without actually reading the map file?
>> Thanks,
>> David Holmes

More information about the hotspot-dev mailing list