Subject: Re: kernel diagnostic assertion "l->l_holdcnt == 0" in i386/syscall.c
To: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
From: enami tsugutomo <enami@sm.sony.co.jp>
List: current-users
Date: 10/01/2004 10:34:21
YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp> writes:
> any fancy filesystems?
Or scsi device?
enami.
Index: scsipi_base.c
===================================================================
RCS file: /cvsroot/src/sys/dev/scsipi/scsipi_base.c,v
retrieving revision 1.120
diff -u -r1.120 scsipi_base.c
--- scsipi_base.c 18 Sep 2004 18:49:50 -0000 1.120
+++ scsipi_base.c 1 Oct 2004 01:18:31 -0000
@@ -2030,6 +2030,9 @@
* into....
*/
free_xs:
+ if (xs->xs_control & XS_CTL_DATA_ONSTACK)
+ PRELE(curlwp);
+
s = splbio();
scsipi_put_xs(xs);
splx(s);
@@ -2040,8 +2043,6 @@
*/
scsipi_run_queue(chan);
- if (xs->xs_control & XS_CTL_DATA_ONSTACK)
- PRELE(curlwp);
return (error);
}