scsi: qedf: Add port_id getter
authorDaniel Wagner <dwagner@suse.de>
Tue, 24 Sep 2019 07:29:06 +0000 (09:29 +0200)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 1 Oct 2019 03:04:34 +0000 (23:04 -0400)
Add qedf_get_host_port_id() to the transport template.

The fc_transport_template initializes the port_id member to the default
value of -1. The new getter ensures that the sysfs entry shows the current
value and not the default one, e.g by using 'lsscsi -H -t'

Link: https://lore.kernel.org/r/20190924072906.23737-1-dwagner@suse.de
Signed-off-by: Daniel Wagner <dwagner@suse.de>
Acked-by: Saurav Kashyap <skashyap@marvell.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qedf/qedf_main.c

index 1659d35cd37b5704436a29a1fb47fd02491712fe..eeea9c03931a4d4ec792bc5992a726ef24acc117 100644 (file)
@@ -1926,6 +1926,13 @@ static int qedf_fcoe_reset(struct Scsi_Host *shost)
        return 0;
 }
 
+static void qedf_get_host_port_id(struct Scsi_Host *shost)
+{
+       struct fc_lport *lport = shost_priv(shost);
+
+       fc_host_port_id(shost) = lport->port_id;
+}
+
 static struct fc_host_statistics *qedf_fc_get_host_stats(struct Scsi_Host
        *shost)
 {
@@ -1996,6 +2003,7 @@ static struct fc_function_template qedf_fc_transport_fn = {
        .show_host_active_fc4s = 1,
        .show_host_maxframe_size = 1,
 
+       .get_host_port_id = qedf_get_host_port_id,
        .show_host_port_id = 1,
        .show_host_supported_speeds = 1,
        .get_host_speed = fc_get_host_speed,