Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 Nov 2002 16:09:58 -0500 (EST)
From:      John Baldwin <jhb@FreeBSD.org>
To:        John Baldwin <jhb@FreeBSD.org>
Cc:        Kris Kennaway <kris@obsecurity.org>, current@FreeBSD.ORG, tanimura@FreeBSD.ORG, Alfred Perlstein <alfred@FreeBSD.ORG>
Subject:   Re: Lock order reversals in sys_pipe.c and kern_sig.c
Message-ID:  <XFMail.20021118160958.jhb@FreeBSD.org>
In-Reply-To: <XFMail.20021118154310.jhb@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On 18-Nov-2002 John Baldwin wrote:
> 
> On 18-Nov-2002 Alfred Perlstein wrote:
>> * Kris Kennaway <kris@obsecurity.org> [021118 12:01] wrote:
>>> On Mon, Nov 18, 2002 at 11:39:01AM -0800, Alfred Perlstein wrote:
>>> 
>>> > Well now they are, I will investigate as time permits.
>>> 
>>> Thanks.
>>> 
>>> > I'm still in a holding pattern about adding more debugging info to
>>> > lockd now that we're in release candidate mode.  I may ask for a
>>> > branch to be done, but i'm not sure yet.
>>> 
>>> Feel free to give me non-committed patches to test :-)
>> 
>> GRR, witless always gives me the locations of the correct lock
>> order, never the locations of the incorrect ones, so here, try this
>> and give me a backtrace, it should nail you with extreme prejudice
>> when you get what i think is the wrong order:
> 
> This is why there is a static lock-order list that you can add to.
> For example:
> 
> Index: subr_witness.c
> ===================================================================
> RCS file: /usr/cvs/src/sys/kern/subr_witness.c,v
> retrieving revision 1.130
> diff -u -r1.130 subr_witness.c
> --- subr_witness.c      11 Nov 2002 16:36:20 -0000      1.130
> +++ subr_witness.c      18 Nov 2002 20:42:35 -0000
> @@ -205,6 +205,9 @@
>         { "uidinfo hash", &lock_class_mtx_sleep },
>         { "uidinfo struct", &lock_class_mtx_sleep },
>         { NULL, NULL },
> +       { "sigio lock", &lock_class_mtx_sleep },
> +       { "pipe mutex", &lock_class_mtx_sleep },
> +       { NULL, NULL },
>         /*
>          * spin locks
>          */

At some point I may add a userland function that allows you to specify
an order to witness at runtime.

-- 

John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.20021118160958.jhb>