SIGBUS help, please
Ion-Mihai Tetcu
itetcu at people.tecnik93.com
Sun Feb 13 10:38:44 PST 2005
[ Stefan, please give me a uname -a and scheduler type. Thanks. ]
On Sun, 13 Feb 2005 20:25:59 +0200
Ion-Mihai Tetcu <itetcu at people.tecnik93.com> wrote:
> On Sun, 13 Feb 2005 12:04:37 -0500
> Brian Fundakowski Feldman <green at freebsd.org> wrote:
>
> > On Sun, Feb 13, 2005 at 06:47:52PM +0200, Ion-Mihai Tetcu wrote:
[ ... ]
> > > In valgrind, on the other hand, --trace-pthread=all --trace-signals=yes it dies:
> >
> > Have you tried helgrind? That seems to be the one to try next. The default
> > stack trace size it keeps is not very large, so you may want to increase it
> > to 100 or so before you go to debugging these. These 4 errors probably are
> > genuine bugs and could be the root cause of the crash that's occurring...
>
> On this it works
> 5.3-STABLE FreeBSD 5.3-STABLE #0: Thu Feb 10 17:38:05 EET 2005 root at it.buh.tecnik93.com:/usr/obj/usr/src/sys/IT53_U i386
> this kernel has ULE
>
> On this it crash
> 5.3-STABLE FreeBSD 5.3-STABLE #17: Mon Jan 17 23:40:22 EET 2005 itetcu at it.buh.cameradicommercio.ro:/usr/obj/usr/src/sys/IT53_d i386
> this 4BSD
>
> WTF ??
Could this be the reason ?
:
jhb 2005-02-04 16:17:56 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_5)
[..]
Log:
MFC Most of the various fixes and changes to libpthread from HEAD to 5.x
including:
Pull debug symbols in for statically linked binaries.
gcc -O2 cleanups.
Don't call _thr_start_sig_daemon() when SYSTEM_SCOPE_ONLY is defined.
If a system scope thread didn't set a timeout, don't call the clock_gettime
system call before and after sleeping.
Add missing reference count drops to close a memory leak.
Save cancelflags in signal frame.
Use a generic way to back threads out of wait queues when handling
signals instead of having more intricate knowledge of thread state
within signal handling.
Simplify signal code because of above (by David Xu).
Use macros for libpthread usage of pthread_cleanup_push() and
pthread_cleanup_pop(). This removes some instances of malloc()
and free() from the semaphore and pthread_once() implementations.
When single threaded and forking(), make sure that the current
thread's signal mask is inherited by the forked thread.
Use private mutexes for libc and libpthread. Signals are
deferred while threads hold private mutexes. This fix breaks
an internal system ABI that old versions of the
www/linuxpluginwrapper port depend on. Upgrading that port to the
latest version will fix that.
Fix race condition in condition variables where handling a
signal (pthread_kill() or kill()) may not see a wakeup
(pthread_cond_signal() or pthread_cond_broadcast()).
Don't panic when sigsuspend is interrupted by a cancellation.
jhb 2005-02-04 16:07:33 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_5)
lib/libpthread/thread thr_exit.c
Log:
MFC: Check unhandled signals before thread marks itself as DEAD;
this reduces chances of losing a signal.
--
IOnut
Unregistered ;) FreeBSD "user"
More information about the freebsd-hackers
mailing list