Memory leak problem reported with gfortran

Jerry DeLisle jvdelisle@verizon.net
Mon Feb 4 03:04:00 GMT 2008


Angelo Graziosi wrote:
> Jerry DeLisle wrote:
> 
>> I have confirmed this problem on Cygwin reported here:
>> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35063
> 
> I do not know if this can help, but...
> 
> Building the above test with G95, it does not fail!
> 
> If I have understood it, I have pressed 10000 ENTER without problem!
> 
> With GFortran (4.2.3, at the moment) it fails, after a few ENTER, with:
> 
> ---------------------------
>       3 [main] test 3956 C:\cygwin\tmp\test.exe: *** fatal error - 
> couldn't allo
> cate muto 'mmap_guard', Win32 error 1816
> Hangup
> -----------------------------------
> 
> In some cases, the PC 'frezees'!
> 
I have continued my testing here and I am seeing this with valgrind on linux. 
When I was running the 10000 loops I did not see these errors roll by upfront 
initially.

==25454== Conditional jump or move depends on uninitialised value(s)
==25454==    at 0x4333F1: strlen (in /home/jerry/prs/pr35063/a.out)
==25454==    by 0x45DE74: fillin_rpath (in /home/jerry/prs/pr35063/a.out)
==25454==    by 0x45FC35: _dl_init_paths (in /home/jerry/prs/pr35063/a.out)
==25454==    by 0x439CDE: _dl_non_dynamic_init (in /home/jerry/prs/pr35063/a.out)
==25454==    by 0x43A3DA: __libc_init_first (in /home/jerry/prs/pr35063/a.out)
==25454==    by 0x414CF5: (below main) (in /home/jerry/prs/pr35063/a.out)
==25454==
==25454== Conditional jump or move depends on uninitialised value(s)
==25454==    at 0x4333BD: strlen (in /home/jerry/prs/pr35063/a.out)
==25454==    by 0x408087: write_integer (write.c:612)
==25454==    by 0x40AEDD: _gfortrani_list_formatted_write (write.c:785)
==25454==    by 0x400330: MAIN__ (in /home/jerry/prs/pr35063/a.out)
==25454==    by 0x40043B: main (fmain.c:21)

The end of the run shows:

==25454== Use of uninitialised value of size 8
==25454==    at 0x41AB57: exit (in /home/jerry/prs/pr35063/a.out)
==25454==
==25454== ERROR SUMMARY: 12 errors from 3 contexts (suppressed: 0 from 0)
==25454== malloc/free: in use at exit: 0 bytes in 0 blocks.
==25454== malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
==25454== For counts of detected errors, rerun with: -v
==25454== All heap blocks were freed -- no leaks are possible.

But no memory leaks. I don't know if this is related or not.  I will keep digging.

Jerry

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list