[Mono-bugs] [Bug 471389] mono will fail with stack sizes less then 1MB on systems with 64KB pages

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Thu Mar 19 17:44:19 EDT 2009


User munroesj at us.ibm.com added comment

--- Comment #6 from Steven Munroe <munroesj at us.ibm.com>  2009-03-19 15:44:18 MST ---
Built mono-2.4 RC3 from the tar file on POWER6 system running SLES11RC3

I don't see any failures with the current patch but I have not found anyway to
reduce the stack size down the danger zone. Can someone show me how to do that?

Paul has been seeing build problems on Fedora11 that are reported as stack
overflow. Not sure what is going on.

Also I added some printfs to mini-exceptions.c mono_setup_altstack() see some

mono_thread_get_stack_bounds: staddr=(nil), stsize=0
mono_thread_get_stack_bounds: pthread_attr_getstack staddr=0x40000820000,
mono_setup_altstack: thread 0x40000510000, stack_base: 0x40000820000,
stack_size: 13194127736832
        end_of_stack: 0xfffffce0000, stack_ovf_guard_base: 0x40000830000
stack_ovf_guard_size: 65536
mono_thread_get_stack_bounds: staddr=(nil), stsize=4398054919680
mono_thread_get_stack_bounds: pthread_attr_getstack staddr=0x40001250000,
mono_thread_get_stack_bounds: staddr=(nil), stsize=0
mono_thread_get_stack_bounds: pthread_attr_getstack staddr=0x40001250000,
mono_setup_altstack: thread 0x4000144f200, stack_base: 0x40001250000,
stack_size: 2097152
        end_of_stack: 0x40001450000, stack_ovf_guard_base: 0x40001260000
stack_ovf_guard_size: 65536

This shows that size of the main thread is reported as 3194127736832 bytes.
this all the storage between the main threads TCB and the end of the address
space (16TB). This may be harmless but is definitely wrong because it will
overlap the stacks for any secondary threads.

I have verfied that this is not coming from the runtime (libpthread) with a
small test case in c that I will attach.

Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.

More information about the mono-bugs mailing list