Re: [PATCH 1/1] be2iscsi: Enabling MSIX and mcc_rings V2

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

 



Jayamohan Kalickal wrote:
_____ From: Mike Christie [mailto:michaelc@xxxxxxxxxxx]
To: Jayamohan Kalickal [mailto:jayamohank@xxxxxxxxxxxxxxxxx]
Cc: linux-scsi@xxxxxxxxxxxxxxx
Sent: Wed, 21 Oct 2009 10:19:06 -0700
Subject: Re: [PATCH 1/1] be2iscsi: Enabling MSIX and mcc_rings V2

Jayamohan Kallickal wrote:
 This patch

 1) Turns on msix
 2) Adds mcc_ring support for sending FW commands
 3) Adds Support for Ring Mode of WRB Posting
 4) Adds sysfs for FW commands


I think msix should be a separate patch from the fw command one, and the ring mode changes could probably be in a separate patch too.

Will Do that

+
+static void beiscsi_async_link_state_process(struct beiscsi_hba *phba,
+		struct be_async_event_link_state *evt)
+{
+	switch (evt->port_link_status) {
+	case ASYNC_EVENT_LINK_DOWN:
+		SE_DEBUG(DBG_LVL_1, "Link Down on Physical Port %d \n",
+						evt->physical_port);
+		break;


When you get a link down, does it cause the fw do start iscsi recovery or does it send the driver a notification that a command is failed due to the link down. For example if we were doing erl0, and the link is gone, would the fw return some error for each command?


For link down maybe you want to fire a iscsi conn error for each session/connection on the port, so that way the iscsi layer can block the sessions and start recovery.

 The FW will report LINKDOWN event almost immediately when the event is noticed.

Some thoughts on the implementation
1) Rather than immediately  shutting down all the sessions , wait for a predetermined
 time ,say, 10 Secs(if the user has pulled the cable and is connecting it back ,for eg, to
connect to a different port on the switch etc). Since IO's will not exceed the Queue  Depth,  this should be fine. However, for MPIO, we may need to load with a parameter (or something  better) so that we will fail immediately and IO's can be switched over to other port faster.


We have a timer it is called the replacement_timeout/recovery_timeout. This will determine how fast we fail cmds upwards when handling these type of errors. When you call iscsi_session_failure or iscsi_conn_faulure it will start the timer. Today, users will set this very short for MPIO setups and very high for something else like root on iscsi.



2) Since this function to shutdown sessions will be used by many drivers , shall we make this
   part of libiscsi. Can do this.


Yes, libiscsi is best. See bnx2i's iscsi_host_for_each_session+iscsi_session_failure use.



2) Since this is
2)

--
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

___________________________________________________________________________________
This message, together with any attachment(s), contains confidential and proprietary information of
ServerEngines Corporation and is intended only for the designated recipient(s) named above. Any unauthorized
review, printing, retention, copying, disclosure or distribution is strictly prohibited.  If you are not the
intended recipient of this message, please immediately advise the sender by reply email message and
delete all copies of this message and any attachment(s). Thank you.

--
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

--
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