Date: Mon, 05 Jan 2004 17:30:09 -0500 (EST) From: John Baldwin <jhb@FreeBSD.org> To: Juli Mallett <jmallett@FreeBSD.org> Cc: Perforce Change Reviews <perforce@freebsd.org> Subject: Re: PERFORCE change 44709 for review Message-ID: <XFMail.20040105173009.jhb@FreeBSD.org> In-Reply-To: <20040102231149.GA69929@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 02-Jan-2004 Juli Mallett wrote: > * Sam Leffler <sam@errno.com> [ Date: 2004-01-02 ] > [ w.r.t. Re: PERFORCE change 44709 for review ] >> On Friday 02 January 2004 02:04 pm, John Baldwin wrote: >> > http://perforce.freebsd.org/chv.cgi?CH=44709 >> > >> > Change 44709 by jhb@jhb_blue on 2004/01/02 14:04:27 >> > >> > Bah, stupid bug. >> > >> > Affected files ... >> > >> > .. //depot/projects/smpng/sys/modules/crash/crash.c#8 edit >> > >> > Differences ... >> > >> > ==== //depot/projects/smpng/sys/modules/crash/crash.c#8 (text+ko) ==== >> > >> > @@ -234,9 +234,9 @@ >> > break; >> > case 18: >> > bzero(&test1_mtx, sizeof(test1_mtx)); >> > - bzero(&test1_mtx, sizeof(test2_mtx)); >> > + bzero(&test2_mtx, sizeof(test2_mtx)); >> > mtx_init(&test1_mtx, "test1", NULL, MTX_DEF); >> > - mtx_init(&test1_mtx, "test2", NULL, MTX_DEF | >> > + mtx_init(&test2_mtx, "test2", NULL, MTX_DEF | >> > MTX_RECURSE); >> > #define TRYLOCK_TEST(lock, descr) do { \ >> > status = mtx_trylock((lock)); \ >> >> Bah bah, bogus assertions. > > Agreed. I want something to *initialize* these things. I hate one bit > of code I have at work: > > sc->[all fields] = [appropriate values for fields] > bzero(&sc->mtx, sizeof sc->mtx); > mtx_init(&sc->mtx, "blah", NULL, MTX_DEF); > > *shrug* My bug was a real one up there that the assertion caught. I had double-init'd test1 and never init'd test2. Perhaps I should break down and add a MTX_FRESH or MTX_NEW flag that skips the assertion. Of course, it just means that when someone does forget to init a mutex or dose a double init they just have a really hard to track down bug. :-/ -- John Baldwin <jhb@FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.20040105173009.jhb>