Date: Sun, 23 Nov 2003 13:45:58 -0500 From: "Christopher M. Sedore" <cmsedore@maxwell.syr.edu> To: "Morten Rodal" <morten@rodal.no>, "Daniel Eischen" <eischen@vigrid.com> Cc: threads@freebsd.org Subject: RE: libkse and bus error Message-ID: <32A8B2CB12BFC84D8D11D872C787AA9A515D9A@EXCHANGE.forest.maxwell.syr.edu>
next in thread | raw e-mail | index | archive | help
As a separate data point, I'm seeing occasional bus errors on some of my = own code, also in pthread_testcancel. If I could find a way to = reproduce it, I'd post, but there I haven't found any consistent way to = make it happen. =20 -Chris ________________________________ From: owner-freebsd-threads@freebsd.org on behalf of Morten Rodal Sent: Sun 11/23/2003 11:23 AM To: Daniel Eischen Cc: threads@freebsd.org Subject: Re: libkse and bus error Morten Rodal wrote:=20 > Daniel Eischen wrote:=20 >=20 >> On Sun, 19 Oct 2003, Morten Rodal wrote:=20 >>=20 >>> On Sun, Oct 19, 2003 at 02:16:27PM -0400, Daniel Eischen wrote:=20 >>>=20 >>>> On Sun, 19 Oct 2003, Morten Rodal wrote:=20 >>>>=20 >>>>> I seem to be able to crash almost every pthread program that uses=20 >>>>> pthread_mutex'es. First I thought it was a problem with=20 >>>>> pthread_testcancel(), until I compiled libkse with = DEBUG_FLAGS=3D-g on=20 >>>>> one of machines.=20 >>>>>=20 >>>>> Backtrace from a machine with DEBUG_FLAGS=3D-g and libkse:=20 >>>>>=20 >>>>> #0 0x28e6ed1b in kse_thr_interrupt () at {standard input}:15=20 >>>>> #1 0x28e5f990 in _thr_sig_add (pthread=3D0x81fab00, = sig=3D136293172,=20 >>>>> info=3D0x0)=20 >>>>> at /usr/src/lib/libpthread/thread/thr_sig.c:885=20 >>>>> #2 0x28e687cb in kse_check_completed (kse=3D0x81fab00)=20 >>>>> at /usr/src/lib/libpthread/thread/thr_kern.c:1558=20 >>>>> #3 0x28e6721c in kse_sched_multi (kmbx=3D0x17e)=20 >>>>> at /usr/src/lib/libpthread/thread/thr_kern.c:1021=20 >>>>=20 >>>>=20 >>>> This is a problem. The mailbox pointer is invalid.=20 >>>>=20 >>>=20 >>> I thought it looked a bit strange. Any clues to what might have=20 >>> caused this?=20 >>=20 >>=20 >>=20 >> When I've seen it before, it's when %gs becomes corrupted. Nvidia=20 >> uses static ldt allocation and this can screw things up. If you=20 >> are getting any static ldt allocations out of the kernel, that is=20 >> the problem.=20 >>=20 >=20 > I hate to rip up in old mails, but I am now able to crash Mozilla=20 > Firebird at command. It dies with the same strange traceback as I got = > with dc++ (which this thread originally addressed).=20 >=20 > When ordering a airplane ticket from www.scandinavian.net Mozilla=20 > Firebird will crash when confirming the payment with a signal 10. This = > happens on three completly different computers;=20 >=20 > * Dual Pentium II 300MHz, libkse, kernel from Nov 19=20 > * Pentium III 933MHz, libkse, kernel from Nov 3=20 > * Pentium 4 1.7GHz, libkse, kernel from Nov 21=20 >=20 > Only the Dual Pentium is running nvidia drivers. The others are = running=20 > X11 drivers.=20 >=20 > All of them produce a MozillaFirebird-bin.core which has this = backtrace=20 > (cut down to an absolute minimum since it is rather huge):=20 >=20 > #0 0x288c2ebb in pthread_testcancel () from /usr/lib/libkse.so.1=20 > #1 0x288bc91b in pthread_mutexattr_init () from /usr/lib/libkse.so.1=20 > #2 0x288bb36c in pthread_mutexattr_init () from /usr/lib/libkse.so.1=20 > #3 0x09b8d000 in ?? ()=20 > #4 0x283c5cac in gtk_widget_hide () from=20 > /usr/X11R6/lib/libgtk-x11-2.0.so.200=20 >=20 > I will recompile libkse with DEBUG_FLAGS=3D-g and see if I cant get = any=20 > more accurate info than this.=20 >=20 Backtrace with debugging symbols in libkse:=20 #0 0x288c2f4b in kse_thr_interrupt () at /var/tmp//cc4HnJI9.s:15=20 #1 0x288b3b3d in _thr_sig_add (pthread=3D0x805e000, sig=3D134574132, = info=3D0x0)=20 at /usr/src/lib/libpthread/thread/thr_sig.c:885=20 #2 0x288bc9ab in kse_check_completed (kse=3D0x8057000)=20 at /usr/src/lib/libpthread/thread/thr_kern.c:1558=20 #3 0x288bb3fc in kse_sched_multi (kmbx=3D0x17e)=20 at /usr/src/lib/libpthread/thread/thr_kern.c:1021=20 #4 0x08287000 in ?? ()=20 #5 0x283c5cac in gtk_widget_hide () from=20 /usr/X11R6/lib/libgtk-x11-2.0.so.200=20 This is taken from the Pentium III machine, which has a ATI card with=20 X11 drivers. I have never seen any mention of usage of static ldt=20 entries in the dmesg.=20 --=20 Morten Rodal=20
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?32A8B2CB12BFC84D8D11D872C787AA9A515D9A>