Mail Archives: cygwin/2011/12/09/12:03:04
On Fri, Dec 09, 2011 at 09:55:18AM -0500, Ryan Johnson wrote:
>> On 09/12/2011 5:58 AM, Denis Excoffier wrote:
>> >I use the latest packages and cygwin snapshots. The problem described
>> >below began several snapshots in the past, around beginning of December.
>> >
>> >The following program, with static allocation of a reasonable amount
>> >of data, segfaults, maybe in alloca(). With a smaller size
>> >(eg 10000) it's ok. With new/malloc (even with 100 times more) it's
>> >ok. With C or C++. 100% reproducible.
>> > unsigned int const SIZE = 689471;
>> > int foo[SIZE];
>> Reasonable? You're trying to stack-allocate 2.5MB of data. Don't do
>> that -- stack sizes are 2MB or less in most operating systems.
>> Besides, doing anything useful with a buffer that size would
>> completely drown out the overhead of calling malloc.
You're right.
% ulimit -a
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
open files (-n) 256
pipe size (512 bytes, -p) 8
stack size (kbytes, -s) 2034
cpu time (seconds, -t) unlimited
max user processes (-u) 256
virtual memory (kbytes, -v) unlimited
% ulimit -s 3000
sh: ulimit: stack size: cannot modify limit: Invalid argument
%
Regards,
Denis Excoffier.
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
- Raw text -