]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.19.51/scsi-qla2xxx-reset-the-fcf_async_-sent-active-flags.patch
Linux 4.19.51
[thirdparty/kernel/stable-queue.git] / releases / 4.19.51 / scsi-qla2xxx-reset-the-fcf_async_-sent-active-flags.patch
1 From 11f22679c0220753d426a333182bb677b3376252 Mon Sep 17 00:00:00 2001
2 From: Giridhar Malavali <gmalavali@marvell.com>
3 Date: Tue, 2 Apr 2019 14:24:22 -0700
4 Subject: scsi: qla2xxx: Reset the FCF_ASYNC_{SENT|ACTIVE} flags
5
6 [ Upstream commit 0257eda08e806b82ee1fc90ef73583b6f022845c ]
7
8 Driver maintains state machine for processing and completing switch
9 commands. This patch resets FCF_ASYNC_{SENT|ACTIVE} flag to indicate if the
10 previous command is active or sent, in order for next GPSC command to
11 advance the state machine.
12
13 [mkp: commit desc typo]
14
15 Signed-off-by: Giridhar Malavali <gmalavali@marvell.com>
16 Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
17 Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
18 Signed-off-by: Sasha Levin <sashal@kernel.org>
19 ---
20 drivers/scsi/qla2xxx/qla_gs.c | 3 +++
21 1 file changed, 3 insertions(+)
22
23 diff --git a/drivers/scsi/qla2xxx/qla_gs.c b/drivers/scsi/qla2xxx/qla_gs.c
24 index de3f2a097451..1f1a05a90d3d 100644
25 --- a/drivers/scsi/qla2xxx/qla_gs.c
26 +++ b/drivers/scsi/qla2xxx/qla_gs.c
27 @@ -3261,6 +3261,8 @@ static void qla24xx_async_gpsc_sp_done(void *s, int res)
28 "Async done-%s res %x, WWPN %8phC \n",
29 sp->name, res, fcport->port_name);
30
31 + fcport->flags &= ~(FCF_ASYNC_SENT | FCF_ASYNC_ACTIVE);
32 +
33 if (res == QLA_FUNCTION_TIMEOUT)
34 return;
35
36 @@ -4604,6 +4606,7 @@ int qla24xx_async_gnnid(scsi_qla_host_t *vha, fc_port_t *fcport)
37
38 done_free_sp:
39 sp->free(sp);
40 + fcport->flags &= ~FCF_ASYNC_SENT;
41 done:
42 return rval;
43 }
44 --
45 2.20.1
46