panic: System call lstat returning with 1 locks held

Yar Tikhiy yar at
Thu Jan 31 05:02:15 PST 2008

On Thu, Jan 31, 2008 at 11:43:10AM +0100, Attilio Rao wrote:
> The assertion failing should not happen now.
> Could you please hand-add a check in _lockmgr_disown()
> (kern/kern_lock.c) in order to check for the panicstr before to call
> WITNESS? I cannot access to perforce now and produce a suitable diff,
> so you can just do this by hand:
> if (lkp->lk_lockholder == td) {
>         if (panicstr != NULL)
>                 WITNESS_UNLOCK(&lkp->lk_object, LOP_EXCLUSIVE, file, line);
>         td->td_locks--;
> }

Shouldn't the test for panicstr be inverse: `panicstr == NULL'?
I guess we shouldn't call WITNESS when panicing, should we?
Sorry if I got it wrong.


More information about the freebsd-current mailing list