Re: scsi_target witness lock error
Sean Bruno <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.firewire,gmane.os.freebsd.devel.scsi |
|---|---|
| Message-ID | <[email protected]> |
Nate Lawson wrote: > Sean Bruno wrote: > >> Alrighty, a little cleaner patch to allow sbp_targ.c to acutally work >> under RELENG_6. http://www.consultcsg.com/RELENG_6.diff >> >> Also and update with the witness error. And the kernel config I am using: >> http://www.consultcsg.com/scsitarget_witness.txt >> http://www.consultcsg.com/FIREWIRE_TGT >> >> Is scsi_target the only application that is making this kern env witness >> error appear? I find it hard to believe that nothing else in the code >> base hits this type of problem? >> > > Apparently scsi_target wasn't fully tested when the CAM locking went in. > It was written before there was a design for CAM locking so it may need > some reworking. For example, it assumes that it should acquire/drop > locks multiple times in its start method if there are multiple CCBs > queued. That may not be the fastest way, depending on contention for > the SIM lock. > > Hmmm...I just applied(ripped off!) a RELENG_7 modifed version of kern_environment.c that uses non-sleepable mutex's and the witness went away. http://www.consultcsg.com/kern_env.diff It appears that you are on to something Nate with regard to the CAM locking. scsi_target appears to be blocking on a call to cam_periph_lock(): http://www.consultcsg.com/cam_periph_lock.txt Hidetoshi suggested a patch that I will now apply and retest: http://consultcsg.com/scsi_target.c.diff I do however, get a kernel panic when trying to exit from scsi_target via ctrl-c http://www.consultcsg.com/knlist_lock.txt Sean P.S. Is the URL based logging working better than a cut/paste into the email for everyone? _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-firewire To unsubscribe, send any mail to "[email protected]"