This is the mail archive of the
glibc-bugs@sources.redhat.com
mailing list for the glibc project.
[Bug libc/620] New: signal handler during _int_malloc calling free hangs
- From: "michael dot pronath at gmx dot de" <sourceware-bugzilla at sources dot redhat dot com>
- To: glibc-bugs at sources dot redhat dot com
- Date: 27 Dec 2004 15:44:15 -0000
- Subject: [Bug libc/620] New: signal handler during _int_malloc calling free hangs
- Reply-to: sourceware-bugzilla at sources dot redhat dot com
In my software, there are several timers, but no multi-threading. It sometimes
hangs, and the stacktrace below indicates, that one timer event occured during
_int_malloc. The handler is calling free(...), and waits for a mutex forever.
Is this case considered in malloc.c, that a signal handler could interrupt the
memory allocation and call free?
Stacktrace:
#0 0x00379894 in __pthread_sigsuspend () from /lib/libpthread.so.0
#1 0x00379018 in __pthread_wait_for_restart_signal () from /lib/libpthread.so.0
#2 0x0037b3b9 in __pthread_alt_lock () from /lib/libpthread.so.0
#3 0x003778be in pthread_mutex_lock () from /lib/libpthread.so.0
#4 0x00431b8d in free () from /lib/libc.so.6
#5 0x08437813 in l_free ()
#6 0x0842f0a3 in l_set_error ()
#7 0x08428b99 in l_ckout_borrow ()
#8 0x084431c4 in l_checkout ()
#9 0x0842d770 in l_reconnect ()
#10 0x0842d0b4 in l_check ()
#11 0x0842dcae in l_timer_heart ()
#12 0x0844030e in l_timer_router ()
#13 0x0037d18d in __pthread_sighandler () from /lib/libpthread.so.0
#14 <signal handler called>
#15 0x0043276e in _int_malloc () from /lib/libc.so.6
#16 0x004319d3 in malloc () from /lib/libc.so.6
#17 0x08426bdb in TclpAlloc ()
...
Distribution is Fedora 1 Linux on i386.
--
Summary: signal handler during _int_malloc calling free hangs
Product: glibc
Version: 2.3.2
Status: NEW
Severity: normal
Priority: P2
Component: libc
AssignedTo: gotom at debian dot or dot jp
ReportedBy: michael dot pronath at gmx dot de
CC: glibc-bugs at sources dot redhat dot com
http://sources.redhat.com/bugzilla/show_bug.cgi?id=620
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.