From owner-freebsd-threads@FreeBSD.ORG Mon Nov 22 05:55:48 2004 Return-Path: Delivered-To: freebsd-threads@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DB0D616A4CE for ; Mon, 22 Nov 2004 05:55:48 +0000 (GMT) Received: from mail.ntplx.net (mail.ntplx.net [204.213.176.10]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7D42243D49 for ; Mon, 22 Nov 2004 05:55:48 +0000 (GMT) (envelope-from deischen@freebsd.org) Received: from sea.ntplx.net (sea.ntplx.net [204.213.176.11]) iAM5tlOM008574; Mon, 22 Nov 2004 00:55:47 -0500 (EST) Date: Mon, 22 Nov 2004 00:55:47 -0500 (EST) From: Daniel Eischen X-X-Sender: eischen@sea.ntplx.net To: Steve Kargl In-Reply-To: <20041122003244.GA80638@troutmask.apl.washington.edu> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Virus-Scanned: by AMaViS and Clam AntiVirus (mail.ntplx.net) cc: freebsd-threads@freebsd.org Subject: Re: firefox stuck in kserel X-BeenThere: freebsd-threads@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Daniel Eischen List-Id: Threading on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Nov 2004 05:55:49 -0000 On Sun, 21 Nov 2004, Steve Kargl wrote: > On Sun, Nov 21, 2004 at 06:37:00PM -0500, Daniel Eischen wrote: > > > > > > > > > > > > You can try the patch at: > > > > > > > > > > > > http://people.freebsd.org/~deischen/kse/libpthread.diffs > > > > > > > > > > > > kargl[281] firefox > > > Fatal error 'Recurse on a private mutex.' at line 988 in file /usr/src/lib/libpthread/thread/thr_mutex.c (errno = 0) > > > Abort trap (core dumped) > > > > What page? I was running at firefox at work with this patch. > > The recurse shouldn't happen. Are you still using plugins? > > > > One more tidbit. I re-installed your patch and deleted > linuxpluginwrapper and linux-flashplugin6. The above > patch works fine. Of course, any web page that use flash 6 > becomes somewhat useless. I don't think it's anything libpthread is doing. > I also rebuilt libpthread with debugging option -g. The > trace shows > > (gdb) bt > #0 0x48a77a2b in kse_thr_interrupt () at kse_thr_interrupt.S:2 > #1 0x48a65d1e in sig_daemon (arg=0x0) > at /usr/src/lib/libpthread/thread/thr_sig.c:214 > #2 0x48a6fae7 in kse_sched_single (kmbx=0x17f) > at /usr/src/lib/libpthread/thread/thr_kern.c:880 Something is hosed because the mailbox in kse_sched_single() is garbage. > #3 0x00000000 in ?? () > Current language: auto; currently asm > (gdb) quit > > This doesn't make any sense to me, so maybe gdb is having > trouble tracing the core dump. I don't know. The backtrace looks OK 'cause kse_sched_single() is the upcall entry point, but the KSE mailbox (kmbx) is not correct -- it should be a pointer and looks more like what %gs would be. -- DE