Re: [PATCH]qla4xxx:Add support for Async Message PDUs [REPOST with fixes]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Mike Christie wrote:
David C Somayajulu wrote:
+        }
+        if (sshdr.asc == 0x3f && sshdr.ascq == 0x0e) {
+            /* induce rescan */
+            iscsi_block_session(ddb_entry->sess);
+            iscsi_unblock_session(ddb_entry->sess);
+        }

I think I was wrong off list. We could actually just call iscsi_unblock_session, but we do not know the state of the session do we? If we got a event that indicated the session was failed could we have a block queued up and this would reverse it by accident?

I was thinking that because qla4xxx_process_aen is called before this we could just check the ddb state, but we can call iscsi_block_session from the interrupt handler to queue up a block so I think that could race with the unblock call here.

Maybe to handle the race we do not want to call qla4xxx_mark_device_busy when we get SCS_TIMEOUT. If we get a ddb aen then could we just wait for that and all those events would be serialized through the dpc thread?

What does SCS_TIMEOUT mean?
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux