lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 16 Mar 2007 13:29:03 +0900 From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com> To: Andrew Morton <akpm@...ux-foundation.org> Cc: da-x@...atomic.org, linux-kernel@...r.kernel.org Subject: Re: thread stacks and strict vm overcommit accounting On Thu, 15 Mar 2007 11:06:21 -0800 Andrew Morton <akpm@...ux-foundation.org> wrote: > > On Tue, 13 Mar 2007 18:33:20 +0200 Dan Aloni <da-x@...atomic.org> wrote: > > Hello, > > > > This question is relevent to 2.6.20. > > > > I noticed that if the RSS for the stack size is say, 8MB, running > > a single-threaded process doesn't incur an increase of 8MB to > > Committed_AS (/proc/meminfo). > > > > However, on multi-threaded apps linked with pthread (on Debian > > Etch with 2.6.20 vanilla x86_64), every thread will incur the > > the specified maximum stack size RSS (assuming that you use > > the default attr). In other words, it appears that vm accounting > > works differently in that case. > > > > Is this the intended behaviour? > > That sounds like a bug to me. AFAIK, "main" thread's stack is marked as VM_GROWS?? and its size can be changed dynamically. "other" threads' stack are alloced by mmap (or malloc maybe) and it never grows. This is difference between multi-thread and single thread. So, you should be carefull to the size of stack when you use multi-threaded apps and vm_overcommit_ratio at the same time. Because MAP_NORESERVE is accounted if sysctl_overcommit_memory == OVERCOMMIT_NEVER, a program like java will fail to create a new thread sometimes. I have no good idea to fix this difference, sorry. -Kame - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists