Re: [PATCH 6/7] be2iscsi: Logout of FW Boot Session

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

 



On 04/16/2015 02:52 PM, Mike Christie wrote:
> On 04/17/2015 04:34 AM, John Soni Jose wrote:
>>  Once be2iscsi driver is loaded and operational close Boot
>>  session established by FW.
>>
>> Signed-off-by: John Soni Jose <sony.john-n@xxxxxxxxxx>
>> Signed-off-by: Jayamohan Kallickal <jayamohan.kallickal@xxxxxxxxxx>
>> ---
>>  drivers/scsi/be2iscsi/be_cmds.h  |   12 ++++++
>>  drivers/scsi/be2iscsi/be_iscsi.c |   12 ++++++
>>  drivers/scsi/be2iscsi/be_main.c  |    1 +
>>  drivers/scsi/be2iscsi/be_main.h  |    2 +
>>  drivers/scsi/be2iscsi/be_mgmt.c  |   70 ++++++++++++++++++++++++++++++++++++++
>>  drivers/scsi/be2iscsi/be_mgmt.h  |    3 ++
>>  6 files changed, 100 insertions(+), 0 deletions(-)
>>
>> diff --git a/drivers/scsi/be2iscsi/be_cmds.h b/drivers/scsi/be2iscsi/be_cmds.h
>> index d0097a2..0586815 100644
>> --- a/drivers/scsi/be2iscsi/be_cmds.h
>> +++ b/drivers/scsi/be2iscsi/be_cmds.h
>> @@ -304,6 +304,17 @@ struct mgmt_auth_method_format {
>>  	struct	mgmt_chap_format chap;
>>  } __packed;
>>  
>> +struct be_cmd_req_logout_fw_sess {
>> +	struct be_cmd_req_hdr hdr;	/* dw[4] */
>> +	uint32_t session_handle;
>> +} __packed;
>> +
>> +struct be_cmd_resp_logout_fw_sess {
>> +	struct be_cmd_resp_hdr hdr;	/* dw[4] */
>> +#define BEISCSI_MGMT_SESSION_CLOSE 0x20
>> +	uint32_t session_status;
>> +} __packed;
>> +
>>  struct mgmt_conn_login_options {
>>  	u8 flags;
>>  	u8 header_digest;
>> @@ -1136,6 +1147,7 @@ struct be_cmd_get_all_if_id_req {
>>  #define OPCODE_ISCSI_INI_CFG_GET_HBA_NAME	6
>>  #define OPCODE_ISCSI_INI_CFG_SET_HBA_NAME	7
>>  #define OPCODE_ISCSI_INI_SESSION_GET_A_SESSION  14
>> +#define OPCODE_ISCSI_INI_SESSION_LOGOUT_TARGET	 24
>>  #define OPCODE_ISCSI_INI_DRIVER_REOPEN_ALL_SESSIONS 36
>>  #define OPCODE_ISCSI_INI_DRIVER_OFFLOAD_SESSION 41
>>  #define OPCODE_ISCSI_INI_DRIVER_INVALIDATE_CONNECTION 42
>> diff --git a/drivers/scsi/be2iscsi/be_iscsi.c b/drivers/scsi/be2iscsi/be_iscsi.c
>> index 508f017..566d27c 100644
>> --- a/drivers/scsi/be2iscsi/be_iscsi.c
>> +++ b/drivers/scsi/be2iscsi/be_iscsi.c
>> @@ -998,6 +998,18 @@ int beiscsi_conn_start(struct iscsi_cls_conn *cls_conn)
>>  	beiscsi_set_params_for_offld(beiscsi_conn, &params);
>>  	beiscsi_offload_connection(beiscsi_conn, &params);
>>  	iscsi_conn_start(cls_conn);
>> +
>> +	/* Logout from the FW boot session */
>> +	if (phba->fw_boot_state) {
>> +		int rc;
>> +
>> +		rc = beiscsi_logout_fw_sess(phba,
>> +			phba->boot_sess.session_handle);
>> +
>> +		if (!rc)
>> +			phba->fw_boot_state = 0
>> +	}
>> +
>>  	return 0;
>>  }
> 
> How do you know the boot session being logged out is the one we are
> replacing and logging into at this time? If userspace logged into
> sessions out of order and you logged into a non root one first, then
> would this kill the session that we might need to access still?

Ignore that, I forgot we get the boot info a pci probe time or from the
health check. But the, why not just have beiscsi_setup_boot_info log out
the session once its done getting the boot info?

It just seems odd to have that logout in the middle of the connection
startup.
--
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