Date: Thu, 22 Nov 2007 13:08:54 +0100 From: "Attilio Rao" <attilio@freebsd.org> To: "Benjamin Close" <Benjamin.Close@clearchain.com> Cc: freebsd-current@freebsd.org Subject: Re: em0 panic: mutex em0 not owned Message-ID: <3bbf2fe10711220408t30136430s15fdba0ebcbbfa66@mail.gmail.com> In-Reply-To: <4744EBA4.7020209@clearchain.com> References: <4744EBA4.7020209@clearchain.com>
next in thread | previous in thread | raw e-mail | index | archive | help
2007/11/22, Benjamin Close <Benjamin.Close@clearchain.com>: > Hi Folks, > With a recent current I'm now getting panics when em0 tries to come up: > > panic: mutex em0 not owned at ../../../kern/kern_mutex.c:144 > > _mtx_assert() + 0xdc > _callout_stop_safe()+0x5d > em_stop() + 0x50 (if_em.c:2546) > em_init_locked()+0x47 (if_em.c:1256) > em_ioctl()+0x466 > ifhwioctl() + 0x75f > ifioctl() +0xb0 > kern_ioctl() + 0xa3 > > This is even after atillos, latest patch. Yes, this is a race access to callout_stop() in em driver. callout_stop() needs to be called with callout-specific lock held otherwise you can get a race and this seems not happening. I just inserted this assertions in order to catch bugs like these. I have no time to double-check it, can you do? Thanks, Attilio -- Peace can only be achieved by understanding - A. Einstein
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3bbf2fe10711220408t30136430s15fdba0ebcbbfa66>