Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1516188
| From | Jiri Slaby <jslaby@suse.cz> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH 3.12 20/72] zfcp: fix fc_host port_type with NPIV |
| Date | 2016-11-07 14:30 +0100 |
| Message-ID | <sAS9R-3GK-59@gated-at.bofh.it> (permalink) |
| References | <sARQt-3wK-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
From: Steffen Maier <maier@linux.vnet.ibm.com>
3.12-stable review patch. If anyone has any objections, please let me know.
===============
commit bd77befa5bcff8c51613de271913639edf85fbc2 upstream.
For an NPIV-enabled FCP device, zfcp can erroneously show
"NPort (fabric via point-to-point)" instead of "NPIV VPORT"
for the port_type sysfs attribute of the corresponding
fc_host.
s390-tools that can be affected are dbginfo.sh and ziomon.
zfcp_fsf_exchange_config_evaluate() ignores
fsf_qtcb_bottom_config.connection_features indicating NPIV
and only sets fc_host_port_type to FC_PORTTYPE_NPORT if
fsf_qtcb_bottom_config.fc_topology is FSF_TOPO_FABRIC.
Only the independent zfcp_fsf_exchange_port_evaluate()
evaluates connection_features to overwrite fc_host_port_type
to FC_PORTTYPE_NPIV in case of NPIV.
Code was introduced with upstream kernel 2.6.30
commit 0282985da5923fa6365adcc1a1586ae0c13c1617
("[SCSI] zfcp: Report fc_host_port_type as NPIV").
This works during FCP device recovery (such as set online)
because it performs FSF_QTCB_EXCHANGE_CONFIG_DATA followed by
FSF_QTCB_EXCHANGE_PORT_DATA in sequence.
However, the zfcp-specific scsi host sysfs attributes
"requests", "megabytes", or "seconds_active" trigger only
zfcp_fsf_exchange_config_evaluate() resetting fc_host
port_type to FC_PORTTYPE_NPORT despite NPIV.
The zfcp-specific scsi host sysfs attribute "utilization"
triggers only zfcp_fsf_exchange_port_evaluate() correcting
the fc_host port_type again in case of NPIV.
Evaluate fsf_qtcb_bottom_config.connection_features
in zfcp_fsf_exchange_config_evaluate() where it belongs to.
Signed-off-by: Steffen Maier <maier@linux.vnet.ibm.com>
Fixes: 0282985da592 ("[SCSI] zfcp: Report fc_host_port_type as NPIV")
Reviewed-by: Benjamin Block <bblock@linux.vnet.ibm.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
---
drivers/s390/scsi/zfcp_fsf.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/s390/scsi/zfcp_fsf.c b/drivers/s390/scsi/zfcp_fsf.c
index 0fe8d5d95119..08d488f47097 100644
--- a/drivers/s390/scsi/zfcp_fsf.c
+++ b/drivers/s390/scsi/zfcp_fsf.c
@@ -3,7 +3,7 @@
*
* Implementation of FSF commands.
*
- * Copyright IBM Corp. 2002, 2013
+ * Copyright IBM Corp. 2002, 2015
*/
#define KMSG_COMPONENT "zfcp"
@@ -508,7 +508,10 @@ static int zfcp_fsf_exchange_config_evaluate(struct zfcp_fsf_req *req)
fc_host_port_type(shost) = FC_PORTTYPE_PTP;
break;
case FSF_TOPO_FABRIC:
- fc_host_port_type(shost) = FC_PORTTYPE_NPORT;
+ if (bottom->connection_features & FSF_FEATURE_NPIV_MODE)
+ fc_host_port_type(shost) = FC_PORTTYPE_NPIV;
+ else
+ fc_host_port_type(shost) = FC_PORTTYPE_NPORT;
break;
case FSF_TOPO_AL:
fc_host_port_type(shost) = FC_PORTTYPE_NLPORT;
@@ -613,7 +616,6 @@ static void zfcp_fsf_exchange_port_evaluate(struct zfcp_fsf_req *req)
if (adapter->connection_features & FSF_FEATURE_NPIV_MODE) {
fc_host_permanent_port_name(shost) = bottom->wwpn;
- fc_host_port_type(shost) = FC_PORTTYPE_NPIV;
} else
fc_host_permanent_port_name(shost) = fc_host_port_name(shost);
fc_host_maxframe_size(shost) = bottom->maximum_frame_size;
--
2.10.2
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH 3.12 00/72] 3.12.67-stable review Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:10 +0100
[PATCH 3.12 01/72] i40e: avoid NULL pointer dereference and recursive errors on early PCI error Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 03/72] scsi: ibmvfc: Fix I/O hang when port is not mapped Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 19/72] powerpc/pseries: Fix stack corruption in htpe code Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 10/72] regulator: tps65910: Work around silicon erratum SWCZ010 Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 15/72] dm: mark request_queue dead before destroying the DM device Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 16/72] powerpc/vdso64: Use double word compare on pointers Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 22/72] zfcp: close window with unblocked rport during rport gone Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 09/72] gpio: mpc8xxx: Correct irq handler function Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 23/72] zfcp: retain trace level for SCSI and HBA FSF response records Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 07/72] pstore: Fix buffer overflow while write offset equal to buffer size Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 06/72] cfq: fix starvation of asynchronous writes Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 08/72] ipc: remove use of seq_printf return value Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 17/72] powerpc/powernv: Use CPU-endian PEST in pnv_pci_dump_p7ioc_diag_data() Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 20/72] zfcp: fix fc_host port_type with NPIV Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:30 +0100
[PATCH 3.12 62/72] powerpc/eeh: Null check uses of eeh_pe_bus_get Jiri Slaby <jslaby@suse.cz> - 2016-11-07 14:40 +0100
Re: [PATCH 3.12 00/72] 3.12.67-stable review Guenter Roeck <linux@roeck-us.net> - 2016-11-07 18:20 +0100
Re: [PATCH 3.12 00/72] 3.12.67-stable review Jiri Slaby <jslaby@suse.cz> - 2016-11-08 16:50 +0100
Re: [PATCH 3.12 00/72] 3.12.67-stable review Guenter Roeck <linux@roeck-us.net> - 2016-11-09 05:20 +0100
Re: [PATCH 3.12 00/72] 3.12.67-stable review Jiri Slaby <jslaby@suse.cz> - 2016-11-10 20:00 +0100
Re: [PATCH 3.12 00/72] 3.12.67-stable review Shuah Khan <shuah.kh@samsung.com> - 2016-11-07 19:40 +0100
Re: [PATCH 3.12 00/72] 3.12.67-stable review Jiri Slaby <jslaby@suse.cz> - 2016-11-10 20:00 +0100
csiph-web