From patchwork Thu Dec 28 20:33:33 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Madhani, Himanshu" X-Patchwork-Id: 10135891 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 979D360318 for ; Thu, 28 Dec 2017 20:34:41 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 89CE42B7EC for ; Thu, 28 Dec 2017 20:34:41 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 7E8AD2C0FA; Thu, 28 Dec 2017 20:34:41 +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 ECF152B1F6 for ; Thu, 28 Dec 2017 20:34:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755329AbdL1Uej (ORCPT ); Thu, 28 Dec 2017 15:34:39 -0500 Received: from mail-bl2nam02on0067.outbound.protection.outlook.com ([104.47.38.67]:28249 "EHLO NAM02-BL2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754537AbdL1UeT (ORCPT ); Thu, 28 Dec 2017 15:34:19 -0500 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=UMzXGEhq4J3N1UVHqK+1C2EVnxshZCKntfwLMUWOwaI=; b=hvRZQhxaqqMzFEjO1COC2EZZUxUyYNXDjL4H9uxZXHbArF8F+myZkMnkZUyNi9TxTrAW7Lq+wkXHIqC/Apl7vTXxIqj6BHpYHxIHGziAsfd0u5TyHuQhxkHTklh81XXplWH+dq2yY6YvCtdgCY1hVgYGup+LDuwSTO7mPm9iyvY= Received: from BY2PR07CA0085.namprd07.prod.outlook.com (10.166.107.38) by CO2PR07MB2519.namprd07.prod.outlook.com (10.166.201.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.366.8; Thu, 28 Dec 2017 20:34:17 +0000 Received: from BN1BFFO11FD008.protection.gbl (2a01:111:f400:7c10::1:118) by BY2PR07CA0085.outlook.office365.com (2a01:111:e400:7bff::38) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.366.8 via Frontend Transport; Thu, 28 Dec 2017 20:34:17 +0000 Authentication-Results: spf=permerror (sender IP is 50.232.66.26) smtp.mailfrom=cavium.com; vger.kernel.org; dkim=none (message not signed) header.d=none; vger.kernel.org; dmarc=none action=none header.from=cavium.com; Received-SPF: PermError (protection.outlook.com: domain of cavium.com used an invalid SPF mechanism) Received: from CAEXCH02.caveonetworks.com (50.232.66.26) by BN1BFFO11FD008.mail.protection.outlook.com (10.58.144.71) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.20.345.12 via Frontend Transport; Thu, 28 Dec 2017 20:33:56 +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; Thu, 28 Dec 2017 12:33:50 -0800 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 vBSKXoZR002926; Thu, 28 Dec 2017 12:33:50 -0800 Received: (from root@localhost) by dut1171.mv.qlogic.com (8.14.7/8.14.7/Submit) id vBSKXomI002925; Thu, 28 Dec 2017 12:33:50 -0800 From: Himanshu Madhani To: , CC: , Subject: [PATCH v2 25/37] qla2xxx: Fix GPNFT/GNNFT error handling Date: Thu, 28 Dec 2017 12:33:33 -0800 Message-ID: <20171228203345.2702-26-himanshu.madhani@cavium.com> X-Mailer: git-send-email 2.12.0 In-Reply-To: <20171228203345.2702-1-himanshu.madhani@cavium.com> References: <20171228203345.2702-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)(39860400002)(396003)(376002)(346002)(39380400002)(2980300002)(448002)(189003)(199004)(1076002)(8676002)(2906002)(81166006)(50226002)(85326001)(8936002)(305945005)(36756003)(81156014)(6666003)(2950100002)(356003)(86362001)(110136005)(106466001)(72206003)(80596001)(48376002)(5660300001)(69596002)(478600001)(4326008)(87636003)(42186006)(16586007)(50466002)(59450400001)(76176011)(54906003)(47776003)(316002)(51416003); DIR:OUT; SFP:1101; SCL:1; SRVR:CO2PR07MB2519; H:CAEXCH02.caveonetworks.com; FPR:; SPF:PermError; PTR:50-232-66-26-static.hfc.comcastbusiness.net; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1BFFO11FD008; 1:cjLqoCz1OuOPtEnfu9lhM7xr8Lqrpd4zFBLzStG/9jzLJ/1SSCwssgxAKm+SHXy+CQZKcPvcxLAUijLkhZKjoUeL/pwQDMvLovMzqoRrAnNWCB+ZVgRT4TFoERmH8oeZ X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: fe6f14df-e937-41c1-2dad-08d54e3251d1 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307)(7153060); SRVR:CO2PR07MB2519; X-Microsoft-Exchange-Diagnostics: 1; CO2PR07MB2519; 3:6LbRBsLMCEkclXs9I1EmaMBW7uVRHCyfg6apPUZTj/xCbqBDibM/q1ZTRvQxkpSBuLM/6+mau7jQOblNJQAXc0bxzOo4iWF30W9cUH4WYgyNdMAVUWJzecZx7NxgEj9IPbqY3KF1Ry1a8i6VqVvqnviESX3H/h5Yxab9qWCiAH9uNA+23J5sBt+wR4D5A41NlG8k0+nQvQ4hEN/14NeVHuoGJxz1GmmQgJCf3A3Q1UamTkvhiTG5WK1Mszttjo3SgTTW+0KyY3tK/SFNgsll0mby9SI7KFh2ZRUJLo+dVIxcCdlIbS7TrbncNCYTcLgBpIa63N+BBlV/KK7eZZs0fg==; 25:wF/VSbYFzKfdk4552e6D8IIbqY7qiMNgCxJMVGxBeB9r/FqlHmGWMb907UXPknla1gON9jO9MSK/Ds+b095jYhCDo29GbwVMDn9lPyjMJ8v1a3mQYHzkfNTn6mGyHC0aPy+YrhBkas2Zmfs20xJ3SxKuS0gjxsz0ceDaqhGlBpZ/Lo1efoMhXZVdraHxiHuE8LX5eOS3OmgCPft7ify4fs2zpeHUWjrNJ7VSsTIo+9rFyBT83wOeCXh+ZGKg5zOyeSwCOu2/Dyne+IyXGhsUm1n3DIK8Zyv6ZhL+Mm+uAx/ieb5MUrj+ZvN7FEdhSmOtAAgPDj6qaIg0K1IG3CeLEg==; 31:GdIL8hGAnLZYDMcsatiZgOBO0k1q4JgFmY2+zGC02AIx+g04iXOucRE0X0uFt0jk1kIexhmd5BgM5mgb11BDgkhGCtdVVXPD4AQUM4sMUp3eFGFgpHsR7kcdTFRIWyhwDq3W5oq/r8gpQTmadO0qt/3dbTaEFPvbGZ4zMSB8h6wSnyXi5Ug661YOcBx446wYg4PF20t7lAV2+YWYk8JNEK12UAJx/eUHDaIo8ae9Kyo= X-MS-TrafficTypeDiagnostic: CO2PR07MB2519: X-Microsoft-Exchange-Diagnostics: 1; CO2PR07MB2519; 20:1dNIgoqd806fhRcJBX8/hHkd97AAf6bzEj6BgFZREVE2UYG/8bgtZ/tMDxuSMs7EZnPHqTV4vU/ARFXU4LcpyQ0oR2uok6fkSU7+DXOTfBDE/ADn3ZipOeeFnaVEm2vInO4oW2kkxB52xcCY9BhkndvFwa4FLNiNr8avYQpz2vOiqDai4h1HIk8PnBoOLmij2Vc0hJIAOuPoYaVRSn5nYo72itRVccATc2IR/kYvYKIN4ptGMXnWxaeUBE/uyGrLHhCQY5TyyNHjbXZvV8XwnKSKne1ghDCKxtEdy+uX2oimHb2YPsbnBiKVQoBCKYIVeSFO291z9ySVFIGqx5GN2P47+b/zbXxYXY0TvTNqLU6QwpqCLeupJI7zkHHSF58wAoREQG596H8yefJsGjAKRR/0kgDgUTUfCcCw0gLkC5NGCDlT8aAOR1sOiNNg8biLmK9WkxIfEZY8qVBvG9CUQvBg4omePa9bODq+CoQLMyBSQ4AXc9c38ThR0L7Ig4Dm; 4:38qNDV12CRL8IlONE1aRPx5T4owV3qrhQhXTUUeDRCLnAkDRalXY2OT7fai+QgZtZNS4R+BQCeisNsLodzi0ncpxbKwKLQ4K3TaEsyBTctJEue0lz9SvhSjlIPDaMY0PvJUnge/w4A5VfU+fmPD6Aes52rr/+aayRi8D/Zvqw1EXZUv9mmqsBfe3zEj/9x4gnpsxAjo5b5ACl6dQaJJL6dNomiADmP+/QRC6nJpW86VPbvttHefIsW64VAosLgU3lHATfxHIbrFnZjR4sCVyiA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040470)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93001095)(3231023)(944501075)(6041268)(20161123562045)(20161123558120)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:CO2PR07MB2519; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:CO2PR07MB2519; X-Forefront-PRVS: 05352A48BE X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CO2PR07MB2519; 23:bLPb9DzlNWuCL+Bzi/CZW08eWx0YJpbWaYqoJSkN5?= =?us-ascii?Q?LgLsr+Tk2Si1mMMvq97YwpPD4BJv8xDYDKeL8UwlZ8xTyufSpzeJwqMVA7EB?= =?us-ascii?Q?hrnzjJWSoxe0Lddcw0qm5RMv6N7l+EtLIFEaEbqFqd918Uvh3D52MBIdpOr9?= =?us-ascii?Q?FA0vnEYlflkCh0ZoNfhDdmNm+t/I7qtXG+5Dfla2L+jjbcFdRT2Trxd7hPcX?= =?us-ascii?Q?vqDvvHdDMN+5wzXZY8OBbyIxdpAU2qGl5pznPTjWJDHCpQDgp0w85C/aKxvo?= =?us-ascii?Q?/wZBa/R7uzEr6dvnM5nHsDLXAyjt8XknyBm/OrWHsMYGNIyaz9QppS/LBnRp?= =?us-ascii?Q?wSBqRfjW9vNYjMc529dqPsSmGyUt/NHldwpUlJOYiA0G3B/bx7rO/1Ke03b2?= =?us-ascii?Q?WF6nfLq2pVTIzMmPPBZ4py7kYBtlz+b3T4JV9tn/wRlbJ/rd/bg8ITIaa5Ha?= =?us-ascii?Q?4ExaWyCIb/Ce8Ugr7+h2fmvaoEW8y/zFnTcsXZPHjHVXfztDTncDbvJWFbae?= =?us-ascii?Q?W56qLIkpOzlIugscPY/PondsWS9pQ4fZRQWpnuDcf5rqC3QlhZu+DmjWu6AR?= =?us-ascii?Q?z2MmuCiM6I3t6PdKf8IFOoLWyVoD4y26dWjdsnSs0+znvihP32sVMnJ4SjrD?= =?us-ascii?Q?A3eLuQ/jsPH+4YHb0WucLHZ+SOxBM7XMhAO6C1eIjbzObxfktXYM0FRMdr9G?= =?us-ascii?Q?OcCJIcNqOLoufO5LvKNEXUEifhOv9zLodas6vv0nJIh9iyOp6qZHtzw9+DhP?= =?us-ascii?Q?IDBwn85vfWh6drdyZEa85xWhaaWQajm3t8n2ft0uvrnKyWdDHdkzHMwJIppk?= =?us-ascii?Q?+QIBDnx5zRXi/li3iUfwNM3bbvoK0H+E4ySD/5UcDB9FnWCetUSlrUZdk0Wx?= =?us-ascii?Q?l/tQc6fpr0ZIdAaTeVrbsB4gWGOhY9eBZ5E2iPahu+06xVobUbLEory8f3hO?= =?us-ascii?Q?mafFOLVk+2qDMpOJpKeh71cE1MX93XI+S73mNxHNBJ5HbHOtnsaBFL8XH4bq?= =?us-ascii?Q?MT/5XSXnF3utA8vW66HQQKi?= X-Microsoft-Exchange-Diagnostics: 1; CO2PR07MB2519; 6:5iGw75R/sgg6V0fl1WLdWmafELQ5+HIfQkXqOYIfPFJsxxwEOzudfW3ukwOYvnGTLxSagNeR4x2sQZigKrDGO1YTN2Yq2ZyMHSQwmupWD4wBOdDE/a5/Goyb8zaCp9992dSiCXV9j+h7LkJP3Bel495ZGzD/5+yjlzfkNH+uIwB8zn3okDqXw4NVumX0Vl22++C86UStRQuzK4UoQIRml4ogG0xPDeCo79lte5N3FbctMsLdJrbIj3FhrJw09rm9LBcxYs2bKpBGv4nnpMY5CjlOLNjFRKil478vWdEghrcZvSawepdKTdbDlyHLI6M0ts8bzSnTJZg8Qf+dYBjDwevDPgpqTI4FIHowJYBq30M=; 5:MYINLdLj6salF6d0KZtOcvyjeD5ciG/swULUe+2aTP8danlJy2wCoAMNq3tTh1oXBzZtFSzmuanniLb60tNoyVYM6BDoiHsQ9GZxFxU1FCbjUP3jgsnv9N1ag7VvL5LIlM0PxAKpFJ6WzaGvDAx3jbU1gcNgs1vCiFP5pPKP2xY=; 24:c5MuvQSd+l4pPD9r9AhPg/TikpH6QV9YabAAlGK5ILQ+Dl4J/6mijkwobWgUw4KoNpzx4HORBo+UwjKtXKvl/l+x+4faPQneFIfc+mVeY5U=; 7:NbNk6mjzewQ7pMX5c2aP+GJTNQq4efD72IMMtGrOA4HZbZ8XyHBlU71eHVzVpNyJXRwlYf8lO+l6Z/Sn+fz26ik1otyQfJ0Jajx+csNzgvMP//Uko/zCtMRrfkbrSMmO31k+yD/aB8eTA8pK93R389JKHARTRHTMV97h1S/pMHQY55nuFO0k1Iq0iTcUZWiNz7YI9lLfF0Ku5USqwHSoJ+dahNuacp/zDxUsJ1j8JueORBQgyBa3GCbB2mrqJ+tx SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Dec 2017 20:33:56.7199 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fe6f14df-e937-41c1-2dad-08d54e3251d1 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: CO2PR07MB2519 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: Quinn Tran retry gpnft/gnnft if error is encountered. Signed-off-by: Quinn Tran Signed-off-by: Himanshu Madhani --- drivers/scsi/qla2xxx/qla_gs.c | 15 +++++++++++++++ drivers/scsi/qla2xxx/qla_init.c | 8 ++++---- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/drivers/scsi/qla2xxx/qla_gs.c b/drivers/scsi/qla2xxx/qla_gs.c index a530c777eac9..fff12d770583 100644 --- a/drivers/scsi/qla2xxx/qla_gs.c +++ b/drivers/scsi/qla2xxx/qla_gs.c @@ -3878,6 +3878,7 @@ void qla24xx_async_gnnft_done(scsi_qla_host_t *vha, srb_t *sp) ql_dbg(ql_dbg_disc, vha, 0xffff, "GPNFT failed. FC4type %x. Rescanning.\n", fc4type); + set_bit(LOCAL_LOOP_UPDATE, &vha->dpc_flags); set_bit(LOOP_RESYNC_NEEDED, &vha->dpc_flags); goto out; } @@ -3987,6 +3988,19 @@ static void qla2x00_async_gpnft_gnnft_sp_done(void *s, int res) "Async done-%s res %x FC4Type %x\n", sp->name, res, sp->gen2); + if (res) { + unsigned long flags; + + ql_dbg(ql_dbg_disc, sp->vha, 0xffff, + "Async done-%s timed out.\n", + sp->name); + sp->free(sp); + set_bit(LOCAL_LOOP_UPDATE, &vha->dpc_flags); + set_bit(LOOP_RESYNC_NEEDED, &vha->dpc_flags); + qla2xxx_wake_dpc(vha); + return; + } + if (!res) { port_id_t id; u64 wwn; @@ -4048,6 +4062,7 @@ static void qla2x00_async_gpnft_gnnft_sp_done(void *s, int res) "Async done-%s unable to alloc work element\n", sp->name); sp->free(sp); + set_bit(LOCAL_LOOP_UPDATE, &vha->dpc_flags); set_bit(LOOP_RESYNC_NEEDED, &vha->dpc_flags); return; } diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c index bb0669901e13..0ea948db910f 100644 --- a/drivers/scsi/qla2xxx/qla_init.c +++ b/drivers/scsi/qla2xxx/qla_init.c @@ -681,15 +681,15 @@ qla24xx_async_gnl_sp_done(void *s, int res) } } - id.b.domain = e->port_id[0]; + id.b.domain = e->port_id[2]; id.b.area = e->port_id[1]; - id.b.al_pa = e->port_id[2]; + id.b.al_pa = e->port_id[0]; id.b.rsvd_1 = 0; if (!found && wwn && !IS_SW_RESV_ADDR(id)) { ql_dbg(ql_dbg_disc, vha, 0x2065, - "%s %d %8phC post new sess\n", - __func__, __LINE__, (u8 *)&wwn); + "%s %d %8phC %06x post new sess\n", + __func__, __LINE__, (u8 *)&wwn, id.b24); wwnn = wwn_to_u64(e->node_name); qla24xx_post_newsess_work(vha, &id, (u8 *)&wwn, (u8 *)&wwnn, NULL, FC4_TYPE_UNKNOWN);