> 
> On 9/30/2011 5:05 PM, Yi Zou wrote:
> > With cmmit "7a2b73 [SCSI] libfc: fix fc_eh_host_reset", the exch lock
> is already
> > held when fc_exch_abort_locked(), but fc_seq_send() that is called
> along the
> > path is gonna grab the same exch lock again, causing dead-lock. Drop
> the exch
> > lock before fc_seq_send() in fc_exch_abort_locked() should fix it.
> >
> > [ Bhanu, I think the fix is good and I did some create/destroy w/ io
> tests, and
> > seems to be fine. Can you take a look to see if I have missed anything
> here. I
> > will get more extensive testing later.
> >
> > thanks - yi ]
> 
> Yi, thanks for fixing this. The fix looks good to me, and it should
> avoid the deadlock. Since the ex_lock is only protecting esb_stat, it is
> okay to release it and re-acquire it after fc_seq_send, although I think
> it may be a bit overkill to hold this lock across fc_frame_alloc.
> 
> I'll test it too.
> 
> Thanks,
> Bhanu
Yeah, you are right, I missed that, I should have unlock moved it out of
the frame alloc. I'll send a v2.

yi


> 
> >
> > <-- snip -->
> >
_______________________________________________
devel mailing list
[email protected]
https://lists.open-fcoe.org/mailman/listinfo/devel

Reply via email to