Re: Re: Re[8]: problems with scsi_transport_fc and qla2xxx

Maxim Kozover
2006-03-20T11:46:01Z

Hi Andrew!
Unfortunately I see that scan-work patch is not included in
2.6.16 and the usual lock appears:
#001: [ffff8100708a8080] {scsi_host_alloc}
.. held by: scsi_wq_4: 3912 [ffff810071edf870, 110]
... acquired at: scsi_scan_target+0x51/0x87 [scsi_mod]

Applying the patch you sent solves the problem, i.e. disks appear again after
22 sec timeout (why?).

Thanks,

Maxim.

Tuesday, March 14, 2006, 2:19:03 AM, you wrote:

AV> diff --git a/drivers/scsi/scsi_transport_fc.c
AV> b/drivers/scsi/scsi_transport_fc.c
AV> index 929032e..3d09920 100644
AV> --- a/drivers/scsi/scsi_transport_fc.c
AV> +++ b/drivers/scsi/scsi_transport_fc.c
AV> @@ -1649,6 +1649,8 @@ fc_remote_port_delete(struct fc_rport *
AV> return;
AV> }
AV>
AV> + /* flush any scan work */ /* which can sleep */
AV> + scsi_flush_work(rport_to_shost(rport));
AV> scsi_target_block(&rport->dev);
AV>
AV> /* cap the length the devices can be blocked until they are deleted */