|
From: Daniel S. <da...@co...> - 2013-07-04 18:50:26
|
On Thu, 2013-07-04 at 11:07 -0700, John Reiser wrote: > > alloca(4096); > > __yell(); > > > > > (gdb) monitor get_vbits 0xffeffeed0 256 > > ________ ________ ________ ________ ________ ________ ________ ________ > > ________ ________ ________ ________ ________ ________ ________ ________ > > ________ ________ ________ ________ ________ ________ ________ ________ > > ________ ________ ________ ________ ________ ________ ________ ________ > > ________ ________ ________ ________ ffffffff ffffffff ffffffff ffffffff > > ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff > > ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff > > ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff > > Address 0xFFEFFEED0 len 256 has 144 bytes unaddressable > > > > Any ideas? It seems to depend on: > > > > - Some (small) number of threads being spawned. > > - A > page-sized alloca(). > > - Reasonably sized memset on top. > > - It's always the main thread which suffers. > > Thank you for the small, reproducible testcase! > > It's a bug in valgrind, so please file a bug report, and include the testcase. > See the "Bug Reports" entry in the left column of the main page > http://www.valgrind.org/ . Okay, thank you. I made https://bugs.kde.org/show_bug.cgi?id=321960 > Meanwhile the trivial workaround is to memset every result of alloca. :D > Oh, and "#include <string.h>" Ah, sorry for that. A previous version only triggered while we had made __yell a variadic function. Yeah, the above one had bad headers. Thanks, Daniel > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by Windows: > > Build for Windows Store. > > http://p.sf.net/sfu/windows-dev2dev > _______________________________________________ > Valgrind-users mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-users |