targclose doesn't return
Danny Braniss
danny at cs.huji.ac.il
Wed Apr 4 08:12:03 UTC 2007
I stumbled on the same problem when porting iSCSI to current,
calling dev_destroy() hangs because si_threadcount is not zero,
Tai-hwa Liang <avatar at mmlab.cse.yzu.edu.tw> came up with a patch, which fixes
the close(), but causes panics when rebooting.
danny
> Actually, I think it's a wildly incorrect use of the clone API. I'll
> take a look at in the in next few days and try to commit something that
> works.
>
> Scott
>
>
> Scott Long wrote:
> > My guess is that the kninit() in targopen isn't being cleaned up from in
> > targclose. I'm not terribly familiar in how the knote API works,
> > though.
> >
> > Scott
> >
> >
> > Matthew Jacob wrote:
> >> Yeah- I've seen this too.
> >>
> >> On 4/3/07, Alex Dupre <ale at freebsd.org> wrote:
> >>> Scott Long wrote:
> >>> > Are there any other console messages from the targ driver? Can you
> >>> > turn on CAMDEBUG and send us the trace of what is going on?
> >>>
> >>> CAMDEBUG is already on, but simply opening/closing the targ device,
> >>> without sending any ioctl to enable it, shouldn't produce any CAM
> >>> message. I traced the kernel thread and I found that it doesn't return
> >>> from the destroy_devl() function: csw->d_purge is NULL and
> >>> dev->si_threadcount is '1'. The thread enters the following block
> >>> (kern_conf.c, row 690) and never exits.
> >>>
> >>>
> >>> while (dev->si_threadcount != 0) {
> >>> /* Use unique dummy wait ident */
> >>> msleep(&csw, &devmtx, PRIBIO, "devdrn", hz / 10);
> >>> }
> >>>
> >>>
> >>> --
> >>> Alex Dupre
> >>> _______________________________________________
> >>> freebsd-scsi at freebsd.org mailing list
> >>> http://lists.freebsd.org/mailman/listinfo/freebsd-scsi
> >>> To unsubscribe, send any mail to "freebsd-scsi-unsubscribe at freebsd.org"
> >>>
> >
> > _______________________________________________
> > freebsd-scsi at freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-scsi
> > To unsubscribe, send any mail to "freebsd-scsi-unsubscribe at freebsd.org"
>
> _______________________________________________
> freebsd-scsi at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-scsi
> To unsubscribe, send any mail to "freebsd-scsi-unsubscribe at freebsd.org"
>
More information about the freebsd-scsi
mailing list