Hi,

Using the qla2xxx driver from Linux 3.10.1 (release), if a LUN from the target side (multiple drives exported over a LIO IBlock qla2xxx export) is removed at the LIO level, the initiator side will not automatically detect that this LUN was removed.

All commands to this LUN will fail (sg_inq, read, writes) but the qla2xxx will never kick the drive out.

If another drive was to be exported on the target side using the same lun as the previously removed drive, commands sent to the same block id would now work again but be sent to the new LUN.

I tried to echo "- - -" in the scsi_host sysfs "scan" file corresponding to the FC port. This worked to detect new LUNs but not to "clear" removed ones.

I tried issuing a lip_reset on both sides, but no change.

Looking through Google, I realized that, on RedHat, a /proc/scsi/qla2xxx virtual FS exists which allows to send a "scsi-qlascan" command to the driver that apparently can detect removed LUNs. Unfortunately I don't have this FS visible on my Linux kernel, and I made sure /proc/scsi was enabled.

The only way I found was to "echo 1 > /sys/block/sdX/device/delete" to the stale device (that corresponds to the removed LUN from the target side), then replace the removed LUN on the target side before finally issuing a "scan" command on the initiator side.

Am I missing something here? Is there a way to rescan a Qlogic FC port using the "qla2xxx" driver from the official, stock kernel?

Thank you very much in advance for your help!

Regards,

Ben - MPSTOR
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to