scsi_target witness lock error

Scott Long scottl at samsco.org
Wed Dec 12 14:17:40 PST 2007


Sean Bruno wrote:
> Hidetoshi Shimokawa wrote:
>> On 12/12/07, Sean Bruno <sbruno at miralink.com> wrote:
>>  
>>>> --- //depot/vendor/freebsd/src/sys/cam/scsi/scsi_target.c     
>>>> 2007/04/15 08:53:22
>>>> +++ 
>>>> //depot/user/simokawa/firewire_lock/sys/cam/scsi/scsi_target.c    
>>>> 2007/05/21 14:31:55
>>>> @@ -372,10 +372,14 @@
>>>>       int     retval;
>>>>
>>>>       softc = (struct targ_softc *)kn->kn_hook;
>>>> +#if 0
>>>>       cam_periph_lock(softc->periph);
>>>> +#endif
>>>>       retval = !TAILQ_EMPTY(&softc->user_ccb_queue) ||
>>>>                !TAILQ_EMPTY(&softc->abort_queue);
>>>> +#if 0
>>>>       cam_periph_unlock(softc->periph);
>>>> +#endif
>>>>       return (retval);
>>>>  }
>>>>       
>>> Are these two "if 0"'s supposed to be commented out?  I'm leaving this
>>> out of my RELENG_6 test for now unless you say otherwise.
>>>
>>>
>>> Sean
>>>     
>>
>> Yes, it is same as comment out.
>> The patch was for RELENG_7 or current. I'm not sure about RELENG_6.
>>
>>   
> Ok, I merged the patch(RELENG_6) to the best of my ability.  The system 
> now panics and has the same witness error.
> 
> panic/witness/trace --> http://consultcsg.com/scsitarget_witness.txt
> scsi_target.c diff --> http://consultcsg.com/scsi_target.c.diff
> 

CAM locking in RELENG_6 is completely different from locking in
RELENG_7.  I'm not saying that your problems are imaginary, just
pointing out that any problems in 6.x are going to almost certainly
be completely different from problems in 7.x.  I'll look at both.

Scott


More information about the freebsd-firewire mailing list