From patchwork Mon Mar 12 18:16:48 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Madhani, Himanshu" X-Patchwork-Id: 10276949 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 8028D602BD for ; Mon, 12 Mar 2018 18:17:19 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6906F28E71 for ; Mon, 12 Mar 2018 18:17:19 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5B27528E77; Mon, 12 Mar 2018 18:17:19 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id B96C128E71 for ; Mon, 12 Mar 2018 18:17:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932805AbeCLSRS (ORCPT ); Mon, 12 Mar 2018 14:17:18 -0400 Received: from mail-by2nam03on0083.outbound.protection.outlook.com ([104.47.42.83]:38910 "EHLO NAM03-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932777AbeCLSRM (ORCPT ); Mon, 12 Mar 2018 14:17:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Xos3GTVe1Tm3mnH6yxE8tFPy8J74WH3rhVHmd6TchPo=; b=neIoGisTvAZwRFc0SYwBl/BpXRPrHw/IwJo5bbKBnPvaZS3GbwdkXnwO2OzgOAAWSY8WP0Aga0ew0sISmzE2g15BYGare6l7NwORuoo6JEPSRHutf+Y4cl+bcVKTiw4vaHsP40CYYgKEsTqn8WTaESEQO64Wg5woGPOynI0x2go= Received: from DM5PR07CA0029.namprd07.prod.outlook.com (2603:10b6:3:16::15) by CY1PR0701MB2089.namprd07.prod.outlook.com (2a01:111:e400:531e::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.548.13; Mon, 12 Mar 2018 18:17:10 +0000 Received: from BL2FFO11OLC007.protection.gbl (2a01:111:f400:7c09::101) by DM5PR07CA0029.outlook.office365.com (2603:10b6:3:16::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.567.14 via Frontend Transport; Mon, 12 Mar 2018 18:17:10 +0000 Authentication-Results: spf=fail (sender IP is 50.232.66.26) smtp.mailfrom=cavium.com; HansenPartnership.com; dkim=none (message not signed) header.d=none;HansenPartnership.com; dmarc=none action=none header.from=cavium.com; Received-SPF: Fail (protection.outlook.com: domain of cavium.com does not designate 50.232.66.26 as permitted sender) receiver=protection.outlook.com; client-ip=50.232.66.26; helo=CAEXCH02.caveonetworks.com; Received: from CAEXCH02.caveonetworks.com (50.232.66.26) by BL2FFO11OLC007.mail.protection.outlook.com (10.173.160.142) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.20.527.18 via Frontend Transport; Mon, 12 Mar 2018 18:17:10 +0000 Received: from dut1171.mv.qlogic.com (172.29.51.171) by CAEXCH02.caveonetworks.com (10.17.4.29) with Microsoft SMTP Server id 14.2.347.0; Mon, 12 Mar 2018 11:16:53 -0700 Received: from dut1171.mv.qlogic.com (localhost [127.0.0.1]) by dut1171.mv.qlogic.com (8.14.7/8.14.7) with ESMTP id w2CIGrIc020783; Mon, 12 Mar 2018 11:16:53 -0700 Received: (from root@localhost) by dut1171.mv.qlogic.com (8.14.7/8.14.7/Submit) id w2CIGrGR020782; Mon, 12 Mar 2018 11:16:53 -0700 From: Himanshu Madhani To: , , , , CC: , Subject: [PATCH 11/13] qla2xxx: Cleanup code to improve FC-NVMe error handling Date: Mon, 12 Mar 2018 11:16:48 -0700 Message-ID: <20180312181650.20704-12-himanshu.madhani@cavium.com> X-Mailer: git-send-email 2.12.0 In-Reply-To: <20180312181650.20704-1-himanshu.madhani@cavium.com> References: <20180312181650.20704-1-himanshu.madhani@cavium.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:50.232.66.26; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(39380400002)(39860400002)(396003)(376002)(346002)(2980300002)(1110001)(1109001)(339900001)(189003)(199004)(81156014)(106466001)(186003)(2201001)(47776003)(26005)(87636003)(59450400001)(69596002)(50226002)(8936002)(72206003)(81166006)(8676002)(80596001)(2906002)(86362001)(5660300001)(48376002)(2950100002)(6666003)(356003)(478600001)(50466002)(305945005)(36756003)(4326008)(1076002)(42186006)(85426001)(316002)(76176011)(51416003)(105606002)(110136005)(54906003)(336012)(16586007); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR0701MB2089; H:CAEXCH02.caveonetworks.com; FPR:; SPF:Fail; PTR:50-232-66-26-static.hfc.comcastbusiness.net; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11OLC007; 1:1+RSIQwFURYkx7nsc83H3sxDSA6ERnOWR6/pyHTyc2zB/TIsBQRD/JqeUiOKkXexawLiTj6i/MAmEcfImGL7I03/EkFMwstqJZJ8s4iOaBeP13RHU9hp1Kpha3NTO3Ju X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1cda53e3-b8ca-49b2-f602-08d5884578d2 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4604075)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060); SRVR:CY1PR0701MB2089; X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB2089; 3:sKu/Ce6VpYe/2Qt07Cx4SvR8c3K4rdirpYSGe1WlRH0uS6hTmY9oLO/XyU8BfMXd5WRBFWpNvtmi0iElgiDthGor8JCHozAJqx7BgNb5Y9qvpBFUuNDEaVI3o0moDDzypELu/bCaa+7POgbLj1eCyRg5JLxHStGeyF3W8XkVPU/vW1mt3kByEzVJITBw1u/tmKbExs92xJq9QEfgQ6Qrq4AAS3pr/3uKNOfmTTplGQrEEHixemeTqykmXNlSibls6ZSdxLuWbeTimdu1x+C14LBa1Tuu3TvXQAVyxDSrXUyEiFAN24iWSg7xSUaISW4TewaY2rvmTBuL5gP/XtT7okP1qsUtyw09qsXDxmIikb0=; 25:9HTW4F/AvDy+98EKj5clH2/zV991f2MVGVsa6a9NfKIkHca3j90cFUbQhDxHdH+3y9JsaJZmaaNYSAGCfVdEtagx7VJ8rbHkEMo/mbLtRsxxmdO53tGfSPWWxc1ODsNqT5KAywjt1p8vmYU/fcYt3EPU7V7wqBRPyeijluaCNhTiUtjjoP7yZaq2jasli8pURDVO7vwrYm12Dri0nt78irH3LgQm4pHG/XRFltYwWtfkFDKYn9KiLs1uSDPCuqJEJ1bpDobvj1xM8oU4VFG8b0rdsUF4thFY7Q0o4DJr/byOvndJoNYj4sJ4N2UjGC6mmazxvx5Up8dx2pPM4/BBHw== X-MS-TrafficTypeDiagnostic: CY1PR0701MB2089: X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB2089; 31:3wBIRuOjYZQE4GtvhBDAXbIE6ugU9uLngOijQ06a7Px5Cv3hWhDxXCkecEZ1UfTxCfoSMnSK73Z63Cs3+aCIr7MIq21sKedKPfJA3Gvos+3maABbGVu4vDRwnNjLY89ddOv4uzzlKJty3DllLS14GZEdUfgnL1b5Kq/lljrM+skdvlMWsoSRlm82kYAzOUehBSCpc1Cn1FSPqVne8uJ6VJ89HSC8B577NLWLd4sUvrA=; 20:txtKyXqcPXfmUF2ld2VtYKqnSJQnrscOJn4SUsJ9NlwyK9G5pDzYyNQJisOCulBmOvLKKE1ySA762Wy+UgsbcL64uiR1zTzjZCEVh8rxeTfFcdEfbUh1/b06yzlQSitMjIysQaZAFTYt5ewE8zPzmsRaa08aY13PgbkY92m/v1jPQ4ddSK2/rcvKkCpssg31aXYf3EeZcPN7OJfH+Dhv+cQWY2tQNr6AsdLjIb2nGSyZndOxeJK/SCJd4GZX3GcfJRovSR7U3xg+eZ27olq60LutI2gEeF2fFO88IHdJZGOONojkFnykfeXMiX+CGrcAtgUkhzFOXKGNPqVyCoIAvg4KBsh/jcaN8gqaNJC0naG8CAJw6x51XdP04B+8v2CzKVYopfoXVRP0eCtzCLbA5epQ7Umkhcz/tfAxY0fIm33rLXlmNjkakaQD6BS8O0bxekl7KmSrdUypDhAx2fP8Xx78bXNkHgmFUadhBrDfQYiAi9Hi4DV4oaHJJYNxS+Gj X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(93006095)(93001095)(10201501046)(3231220)(944501244)(52105095)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123558120)(6072148)(201708071742011); SRVR:CY1PR0701MB2089; BCL:0; PCL:0; RULEID:; SRVR:CY1PR0701MB2089; X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB2089; 4:9ITI2NUUDfYiqikXRCcjmDgQNK5/QsWogUPbhpCexMPPzMNL4vof5IuT6wV0gAwe02rlB//ljzmV+KxdLPKwtk7C4Za7dhB6PMTdHBRkr0Io8sI7dKdB/uO+buchOT6BLwROlGVR8AigOJIcOtQFAboBaWlD9mvo+eHmEjTmLsg2p4ja+ECfqs4j2mkkPuBFIXfKs+/Q8mUYlDiz21XWgvo9fT81lOtaAH33AkJVNKePApLmqU9mVTXvubndbhKN+QlsupmwaRA+Tg/Zzf9O0Q== X-Forefront-PRVS: 06098A2863 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR0701MB2089; 23:Rz+IJ+qssjxhEZaMH/+3BCTwEFIsaxGgyEGQnck?= =?us-ascii?Q?kHehZo3SK6aJFCf1DN1stl4iC4+DgoIDXPORA7dvS4amRNBkJLuBU7/Ww1BR?= =?us-ascii?Q?IY5mVg55DhuGbTjYDOQuLbgLEDTEoPS3TU6cRpgpDAsvXY/KmUf1wZ/lEMUP?= =?us-ascii?Q?9Le5a7vyXotN5ed5Nqrq6DS2uUlKEqW7nEfrCr7BzO8Wl7sSnf6jw3s0f/IG?= =?us-ascii?Q?5cZsnP/0adZN3hcqelWOP/+JUfLydROtPnYRo/BZ1Qkhkzkd1u+Y+2RnXCfB?= =?us-ascii?Q?VJZFgiLquAPojAxol0W9zzDVqqrg8voVeIpsZaDJvKt8QAGrlImAcX4YuHBa?= =?us-ascii?Q?ri8GeH7gh8HrC4x0P71kv/g/PsV3/o8DHtYd02vQjQpzBLChxYTrYTzxKNfr?= =?us-ascii?Q?eCOAOH5f+fuXEfXGzxbxJECP+aa5/iJwGHlFWbltjhj2UpqzfWLzMBHuJLQS?= =?us-ascii?Q?RdGPrZKOLa5jY0YN5DJJT/1cg7mOpgeFwlmVQ2oMTIoO3Yl1LqurBOfZcCBx?= =?us-ascii?Q?gVRxPq0aj/Lkr1QctEZL6KD6ndIljSrYtIadtLXlJ4kXhEVgSXoD6oWOjPwB?= =?us-ascii?Q?sxi+XpORJ01fwOSAssbkDP5DfH6ACoAipyPJblAVb8ou/8E3Kic+mCK4cXo6?= =?us-ascii?Q?RtxqxSJc4M0PDSpxU4p8E79V5MqWb+DamgjO4L3SMPQ38GO71rSn9pSevTcb?= =?us-ascii?Q?xe6JWnWEEJKkLHIk/06dfF7g5zhFu5755CM9Z7MyrxByT1e4avogsPrC4coH?= =?us-ascii?Q?Jo095jvfr3pmtQC7sdWAYN+WCliizykgf+x/u2H/5KOcYXJff8zPlyMwEL0y?= =?us-ascii?Q?YxRJLiEcQh/hfqDQHDIjq8eGdUbSwTjHK8lV8f0Lddwo7bqEiYImbJsha7Ph?= =?us-ascii?Q?aWsNmhypGV1Rdp6+zfiot5e5TqFTWlU0WCZJ6Wjw1WhbSzupDzYqiFWuiKaj?= =?us-ascii?Q?rvuVM4ZutqEIzgV63krei6kvcijH5ONOCTPs9VWbYv/u/yFMVwo3vv/eomV0?= =?us-ascii?Q?k32DCyplFqxeygmtTk8d2USu0UMN6ci7TWng0wBXcPzB7sMJEiCXBdU1hbRo?= =?us-ascii?Q?AwfZMDMcgYmeTG+14ZVRpTKi9iDB2IhQ1ibbpx5jFVLT0kIBshwUZmgsiufL?= =?us-ascii?Q?T7tgmN3clFSN4sVr9JtKF8ucB1ujAZouX?= X-Microsoft-Antispam-Message-Info: WRl2M26wznRCSnyGHbmMxdna1Q14PxecFHgpowlzj6f4IN7qE0MekPi5HV6k7nfIIvwYL6WS3Me8tau+PyjHboZlHGnWnmx1/23vGIMf59bHEUlIQXK9r8BHOVuW6CAkGx6sl1BTzO5iQlR/fAUledNkKfQTd1PpP9afYmrrDe3h1aG2M8eRC9QPMAfuHrUH X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB2089; 6:BEPkjSU0OBvP+Cp3Mx0sAH/eTqxWEjVEy2PzdMLCxtfm05q9d/8DELE16FEDLUUZBxSKIzuMiEwqV1/nxcCmWY9Dhv07H0ZHA7mpAtg91u45CfbRadY19IseI08XOVPU3btmkqDNBNWHQPaNXthztqJKxOAMnJx4U1KWK6uVG52FFcVXua+Sgkt5yGKcfbkBp6l5hcTSEx/SjyZO58hl0Ss1WcuCneY9WVExSQe3aGGbSF+0QQIuTj9z5/ckcvyOX05PxWpwnBx6HlPIQGoof6fruzEAbeh+C2GEcqtr38JV9I0SgsU5DUAjaDOIGCPdGnQ2HfuyTMO/7yWQIE2jJ8Fmsa/2f+cXfKuTFVr/mHs=; 5:Hk1fX7OgyGsH4UrbfVgbHmmY3nWZSEFv0Puxvw6ofm+L1aRrRIZC626gK1IH9BE20tpPaAEb4WI7PJbtZrj0gxXQ648P1d07uC5D0NpnPUMbVbuJfctYBEopll73Ys4yodux6bFKC6t51H6YQSLXv883HNL5vatVg2n3vWbKOQc=; 24:zav2z20QgiXhePN5ty7TAnguDs5mLO6fo1jpS2U+28KZIXf7xjilYY6UMV6rdnVmfEYXwk9U+uVUiNik3d7D3bm4VEpj2dMpSkOtXExomxw=; 7:qUhvF0nNjVuOBhIh5XFbglWZBT3q1lvLhyk+mnkWxHSJUFQcMLyD+FW5ZqKHK8Lp3igCgEESvVPnMWS4lulQxBD7mC2u0IAdds0EVaNtEzObY0fAezDQaOuUOl4V/OYy4Dl8w2Y4v+LlQaVu7F/kc4udqDciR+LX+l1dpr/Dx25NPvQ9I7uPLd2zB2OpN+icTRNpSfRWhb0S3Iwb5qVjpf4VKEc6miW4vLx+MFuDye5TvJKeHpmvS/cQI8pDcsWM SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Mar 2018 18:17:10.0417 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1cda53e3-b8ca-49b2-f602-08d5884578d2 X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=711e4ccf-2e9b-4bcf-a551-4094005b6194; Ip=[50.232.66.26]; Helo=[CAEXCH02.caveonetworks.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0701MB2089 Sender: linux-scsi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-scsi@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Darren Trapp Signed-off-by: Darren Trapp Signed-off-by: Himanshu Madhani Reviewed-by: Hannes Reinecke --- drivers/scsi/qla2xxx/qla_isr.c | 78 +++++++++++++++-------------------------- drivers/scsi/qla2xxx/qla_nvme.c | 2 +- 2 files changed, 29 insertions(+), 51 deletions(-) diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c index 07c98eb911fd..7cacdc3408fa 100644 --- a/drivers/scsi/qla2xxx/qla_isr.c +++ b/drivers/scsi/qla2xxx/qla_isr.c @@ -1838,31 +1838,23 @@ qla24xx_tm_iocb_entry(scsi_qla_host_t *vha, struct req_que *req, void *tsk) sp->done(sp, 0); } -static void -qla24xx_nvme_iocb_entry(scsi_qla_host_t *vha, struct req_que *req, void *tsk) +static void qla24xx_nvme_iocb_entry(scsi_qla_host_t *vha, struct req_que *req, + void *tsk, srb_t *sp) { - const char func[] = "NVME-IOCB"; fc_port_t *fcport; - srb_t *sp; struct srb_iocb *iocb; struct sts_entry_24xx *sts = (struct sts_entry_24xx *)tsk; uint16_t state_flags; struct nvmefc_fcp_req *fd; uint16_t ret = 0; - struct srb_iocb *nvme; - - sp = qla2x00_get_sp_from_handle(vha, func, req, tsk); - if (!sp) - return; iocb = &sp->u.iocb_cmd; fcport = sp->fcport; iocb->u.nvme.comp_status = le16_to_cpu(sts->comp_status); state_flags = le16_to_cpu(sts->state_flags); fd = iocb->u.nvme.desc; - nvme = &sp->u.iocb_cmd; - if (unlikely(nvme->u.nvme.aen_op)) + if (unlikely(iocb->u.nvme.aen_op)) atomic_dec(&sp->vha->hw->nvme_active_aen_cnt); /* @@ -1896,45 +1888,30 @@ qla24xx_nvme_iocb_entry(scsi_qla_host_t *vha, struct req_que *req, void *tsk) fd->transferred_length = fd->payload_length - le32_to_cpu(sts->residual_len); - /* - * If transport error then Failure (HBA rejects request) - * otherwise transport will handle. - */ - if (sts->entry_status) { - ql_log(ql_log_warn, fcport->vha, 0x5038, - "NVME-%s error - hdl=%x entry-status(%x).\n", - sp->name, sp->handle, sts->entry_status); + switch (le16_to_cpu(sts->comp_status)) { + case CS_COMPLETE: + ret = QLA_SUCCESS; + break; + case CS_ABORTED: + case CS_RESET: + case CS_PORT_UNAVAILABLE: + case CS_PORT_LOGGED_OUT: + case CS_PORT_BUSY: + ql_log(ql_log_warn, fcport->vha, 0x5060, + "NVME-%s ERR Handling - hdl=%x completion status(%x) resid=%x ox_id=%x\n", + sp->name, sp->handle, sts->comp_status, + le32_to_cpu(sts->residual_len), sts->ox_id); + fd->transferred_length = 0; + iocb->u.nvme.rsp_pyld_len = 0; + ret = QLA_ABORTED; + break; + default: + ql_log(ql_log_warn, fcport->vha, 0x5060, + "NVME-%s error - hdl=%x completion status(%x) resid=%x ox_id=%x\n", + sp->name, sp->handle, sts->comp_status, + le32_to_cpu(sts->residual_len), sts->ox_id); ret = QLA_FUNCTION_FAILED; - } else { - switch (le16_to_cpu(sts->comp_status)) { - case CS_COMPLETE: - ret = QLA_SUCCESS; - break; - - case CS_RESET: - case CS_PORT_UNAVAILABLE: - fcport->nvme_flag |= NVME_FLAG_RESETTING; - /* fall through */ - case CS_ABORTED: - case CS_PORT_LOGGED_OUT: - case CS_PORT_BUSY: - ql_log(ql_log_warn, fcport->vha, 0x5060, - "NVME-%s ERR Handling - hdl=%x completion status(%x) resid=%x ox_id=%x\n", - sp->name, sp->handle, sts->comp_status, - le32_to_cpu(sts->residual_len), sts->ox_id); - fd->transferred_length = 0; - iocb->u.nvme.rsp_pyld_len = 0; - ret = QLA_ABORTED; - break; - - default: - ql_log(ql_log_warn, fcport->vha, 0x5060, - "NVME-%s error - hdl=%x completion status(%x) resid=%x ox_id=%x\n", - sp->name, sp->handle, sts->comp_status, - le32_to_cpu(sts->residual_len), sts->ox_id); - ret = QLA_FUNCTION_FAILED; - break; - } + break; } sp->done(sp, ret); } @@ -2462,7 +2439,8 @@ qla2x00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt) /* NVME completion. */ if (sp->type == SRB_NVME_CMD) { - qla24xx_nvme_iocb_entry(vha, req, pkt); + req->outstanding_cmds[handle] = NULL; + qla24xx_nvme_iocb_entry(vha, req, pkt, sp); return; } diff --git a/drivers/scsi/qla2xxx/qla_nvme.c b/drivers/scsi/qla2xxx/qla_nvme.c index 57275bc9fe14..c5a963c2c86e 100644 --- a/drivers/scsi/qla2xxx/qla_nvme.c +++ b/drivers/scsi/qla2xxx/qla_nvme.c @@ -280,7 +280,7 @@ static void qla_nvme_poll(struct nvme_fc_local_port *lport, void *hw_queue_handl spin_unlock_irqrestore(&qpair->qp_lock, flags); } -static int qla2x00_start_nvme_mq(srb_t *sp) +static inline int qla2x00_start_nvme_mq(srb_t *sp) { unsigned long flags; uint32_t *clr_ptr;