- Don't acquire Giant before calling b_biodone, individual consumers are

now required to do so themselves.

Sponsored by:	Isilon Systems, Inc.
This commit is contained in:
Jeff Roberson 2005-04-30 11:44:22 +00:00
parent 2524c26de8
commit ba4f7c7023
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=145703

View file

@ -3087,14 +3087,8 @@ bufdone(struct buf *bp)
if (bp->b_iodone != NULL) {
biodone = bp->b_iodone;
bp->b_iodone = NULL;
/*
* Device drivers may or may not hold giant, hold it here
* if we're calling into unknown code.
*/
mtx_lock(&Giant);
bp->b_flags |= B_DONE;
(*biodone) (bp);
mtx_unlock(&Giant);
if (dropobj)
bufobj_wdrop(dropobj);
splx(s);