public inbox for glibc-bugs@sourceware.org help / color / mirror / Atom feed
From: "carlos_odonell at mentor dot com" <sourceware-bugzilla@sourceware.org> To: glibc-bugs@sources.redhat.com Subject: [Bug libc/11787] Program with large TLS segment fails aio_write Date: Sat, 24 Mar 2012 16:10:00 -0000 [thread overview] Message-ID: <bug-11787-131-lcAKUdGXfQ@http.sourceware.org/bugzilla/> (raw) In-Reply-To: <bug-11787-131@http.sourceware.org/bugzilla/> http://sourceware.org/bugzilla/show_bug.cgi?id=11787 --- Comment #13 from Carlos O'Donell <carlos_odonell at mentor dot com> 2012-03-24 16:05:19 UTC --- (In reply to comment #12) > (In reply to comment #8) > > > Please note that the aio helper thread *should* be using a default 2MB stack on > > x86, not 16K, I don't see anywhere that sets the helper threads stack to 16K. > > The helper thread stack size *is* set by __pthread_get_minstack. Thanks, I just spotted that in nptl/sysdeps/unix/sysv/linux/aio_misc.h. > This was done here: > > 2011-12-22 Ulrich Drepper <drepper@gmail.com> > > [BZ #13088] > * sysdeps/unix/sysv/linux/timer_routines.c: Get minimum stack size > through __pthread_get_minstack. > * nptl-init.c (__pthread_initialize_minimal_internal): Get page size > directly from _rtld_global_ro. > (__pthread_get_minstack): New function. > * pthreadP.h: Declare __pthread_get_minstack. > * Versions (libpthread) [GLIBC_PRIVATE]: Add __pthread_get_minstack. > > and is *precisely* the change we are asking for for the other threads. Thanks for pointing this out. > I see that Rich Felker is in exact agreement with me: > http://sourceware.org/bugzilla/show_bug.cgi?id=13088#c1 > > > You are also increasing the memory footprint of all applications that use TLS > > that worked fine before. > > It depends on what you call "memory footprint". Yes, we'll increase memory > we *reserve* for stacks (VM size). But we will not *use* any more memory > than what's already used (RSS). Reservations still consume VM space and limit the maximum number of threads. Reservation is still a serious problem for kernel VM management and layout. We should not increase the reserved VM space without due consideration. > I think the only application that would notice this is one that was almost > running out of VM space. An answer for such app would be to decrease its > default stack sizes, use smaller number of threads, or switch to 64 bits. Not true. What about applications with *lots* of threads, each thread running computational kernels (little real stack usage), and lots of thread-local data. In those cases you could be doubling the reservation per thread and causing the application to be unable to spawn a larger number of threads. > > Before making any changes we need to hear from the distros (RH, SuSE, Debian, > > Gentoo, Ubuntu etc) about the kind of impact this might have e.g. a quick find > > / readelf -a / grep to determine on average the memory increase we are looking > > at. > > Would above still apply if it's just VM size we are talking about? > I don't see how readelf will reveal anything. Yes. We need to get input from the distros. We should not make a change like this without talking to them. You use readelf to find the TLS segment and see how much bigger the per-thread memory reservation will be and collect this data for as many applications as possible to see the expected real-world impact. > > There are multiple cases here. > > > You appear to be suggesting the following: > > > > For (a) the behaviour remains the same. > > > > For (b) we adjust upward by the size of the static TLS data. > > > > For (c) " > > > > For (d) " > > > > For (e) " > > Yes, I believe that's what we are proposing. I'm glad to see that I understand the problem. Cheers, Carlos. -- Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
next prev parent reply other threads:[~2012-03-24 16:05 UTC|newest] Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <bug-11787-131@http.sourceware.org/bugzilla/> 2012-02-24 4:35 ` ppluzhnikov at google dot com 2012-02-24 19:36 ` asharif.tools at gmail dot com 2012-03-22 21:48 ` asharif.tools at gmail dot com 2012-03-23 20:35 ` vapier at gentoo dot org 2012-03-23 20:37 ` carlos_odonell at mentor dot com 2012-03-23 20:39 ` carlos_odonell at mentor dot com 2012-03-23 21:33 ` carlos_odonell at mentor dot com 2012-03-23 22:07 ` ppluzhnikov at google dot com 2012-03-23 22:47 ` asharif.tools at gmail dot com 2012-03-23 22:51 ` carlos_odonell at mentor dot com 2012-03-23 23:02 ` carlos_odonell at mentor dot com 2012-03-23 23:03 ` carlos_odonell at mentor dot com 2012-03-24 2:22 ` carlos_odonell at mentor dot com 2012-03-24 10:30 ` ppluzhnikov at google dot com 2012-03-24 16:10 ` carlos_odonell at mentor dot com [this message] 2012-03-24 17:08 ` carlos_odonell at mentor dot com 2012-03-24 17:39 ` vapier at gentoo dot org 2012-03-24 18:30 ` ppluzhnikov at google dot com 2012-03-24 20:13 ` carlos_odonell at mentor dot com 2012-03-24 20:46 ` carlos_odonell at mentor dot com 2012-03-24 20:57 ` ppluzhnikov at google dot com 2012-03-25 2:01 ` carlos_odonell at mentor dot com 2012-03-25 23:16 ` vapier at gentoo dot org 2012-03-26 14:29 ` joseph at codesourcery dot com 2012-03-26 17:44 ` carlos_odonell at mentor dot com 2012-03-27 21:21 ` carlos_odonell at mentor dot com 2012-03-30 16:21 ` carlos_odonell at mentor dot com 2012-03-30 16:46 ` law at redhat dot com 2012-03-30 21:28 ` ppluzhnikov at google dot com 2012-04-01 19:47 ` carlos_odonell at mentor dot com 2012-04-24 22:03 ` asharif.tools at gmail dot com 2012-04-24 22:36 ` carlos_odonell at mentor dot com 2012-04-25 2:55 ` vapier at gentoo dot org 2012-04-25 18:25 ` asharif.tools at gmail dot com 2012-04-25 20:11 ` carlos_odonell at mentor dot com 2012-05-07 21:22 ` [Bug libc/11787] Program with large TLS segments fail carlos_odonell at mentor dot com 2012-05-17 14:11 ` carlos_odonell at mentor dot com 2012-05-22 7:05 ` siddhesh at redhat dot com 2012-05-23 16:41 ` carlos_odonell at mentor dot com 2012-05-23 17:09 ` siddhesh at redhat dot com 2012-05-23 17:09 ` siddhesh at redhat dot com 2012-06-05 15:15 ` ian at airs dot com 2012-11-19 6:18 ` carlos_odonell at mentor dot com 2012-12-03 23:52 ` carlos at systemhalted dot org 2012-12-03 23:53 ` carlos at systemhalted dot org 2013-04-26 18:06 ` ppluzhnikov at google dot com 2013-04-27 2:02 ` bugdal at aerifal dot cx 2013-05-22 18:40 ` carlos at redhat dot com 2013-09-13 21:45 ` bas at bmail dot ru 2013-11-23 9:05 ` david.abdurachmanov at gmail dot com 2013-11-23 9:20 ` david.abdurachmanov at gmail dot com 2013-11-24 15:58 ` carlos at redhat dot com 2014-02-16 19:42 ` jackie.rosen at hushmail dot com 2014-05-28 19:41 ` schwab at sourceware dot org 2014-06-30 17:33 ` fweimer at redhat dot com 2014-07-02 6:06 ` fweimer at redhat dot com 2015-03-23 2:50 ` andersk at mit dot edu 2015-08-22 21:36 ` [Bug dynamic-link/11787] " jsm28 at gcc dot gnu.org 2020-06-15 16:23 ` john.wellesz at hiventy dot com 2021-06-19 8:05 ` a3at.mail at gmail dot com 2022-01-26 6:44 ` sam at gentoo dot org 2022-06-07 8:09 ` i at maskray dot me 2022-11-06 20:12 ` i at maskray dot me 2010-07-02 23:02 [Bug libc/11787] New: Program with large TLS segment fails aio_write ppluzhnikov at google dot com 2010-07-02 23:03 ` [Bug libc/11787] " ppluzhnikov at google dot com
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=bug-11787-131-lcAKUdGXfQ@http.sourceware.org/bugzilla/ \ --to=sourceware-bugzilla@sourceware.org \ --cc=glibc-bugs@sources.redhat.com \ /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: linkBe 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; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).