]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
scsi: qla2xxx: edif: Use link event to wake up app
authorQuinn Tran <qutran@marvell.com>
Wed, 8 Sep 2021 16:46:17 +0000 (09:46 -0700)
committerAndrea Righi <andrea.righi@canonical.com>
Tue, 4 Jan 2022 08:48:28 +0000 (09:48 +0100)
BugLink: https://bugs.launchpad.net/bugs/1951822
[ Upstream commit 527d46e0b0147f2b32b78ba49c6a231835b24a41 ]

Authentication application may be running and in the past tried to probe
driver (app_start) but was unsuccessful. This could be due to the bsg layer
not being ready to service the request. On a successful link up, driver
will use the netlink Link Up event to notify the app to retry the app_start
call.

In another case, app does not poll for new NPIV host. This link up event
would notify app of the presence of a new SCSI host.

Link: https://lore.kernel.org/r/20210908164622.19240-6-njavali@marvell.com
Fixes: 4de067e5df12 ("scsi: qla2xxx: edif: Add N2N support for EDIF")
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Nilesh Javali <njavali@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
drivers/scsi/qla2xxx/qla_init.c

index 5fc7697f0af4c1f979f6d753ab81bdecd745671b..7e64e4730b2598fe7c060c6f0c7d0f9cdee96cf5 100644 (file)
@@ -5335,15 +5335,14 @@ qla2x00_configure_loop(scsi_qla_host_t *vha)
                            "LOOP READY.\n");
                        ha->flags.fw_init_done = 1;
 
+                       /*
+                        * use link up to wake up app to get ready for
+                        * authentication.
+                        */
                        if (ha->flags.edif_enabled &&
-                           !(vha->e_dbell.db_flags & EDB_ACTIVE) &&
-                           N2N_TOPO(vha->hw)) {
-                               /*
-                                * use port online to wake up app to get ready
-                                * for authentication
-                                */
-                               qla2x00_post_aen_work(vha, FCH_EVT_PORT_ONLINE, 0);
-                       }
+                           !(vha->e_dbell.db_flags & EDB_ACTIVE))
+                               qla2x00_post_aen_work(vha, FCH_EVT_LINKUP,
+                                                     ha->link_data_rate);
 
                        /*
                         * Process any ATIO queue entries that came in