From patchwork Fri May 19 21:53:32 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Madhani, Himanshu" X-Patchwork-Id: 9738259 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 6542D6034C for ; Fri, 19 May 2017 21:54:21 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5382328562 for ; Fri, 19 May 2017 21:54:21 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4835828573; Fri, 19 May 2017 21:54:21 +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 D65EC28562 for ; Fri, 19 May 2017 21:54:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756843AbdESVyU (ORCPT ); Fri, 19 May 2017 17:54:20 -0400 Received: from mail-cys01nam02on0088.outbound.protection.outlook.com ([104.47.37.88]:21419 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1756672AbdESVyM (ORCPT ); Fri, 19 May 2017 17:54: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=sJidYPlB0l/AHwqYSwJiGzt7Bi01mdLm26xv64pu8ck=; b=d0PiBMi9Loz/cIu0go+WS6N5u5KR6rQMjokLNPBQJIc/tsjIWm6+iaGcA8ufBabHKMdQrFRsTXXbdq4A1aRMKj5EsK3OD9iSdfL+hAq2YyQVI9ew54J4JGqI44FSRa4mnQNrdj8SbokILE5yAfz2avvCO9omcIPSjAGbdCokauw= Received: from SN1PR07CA0031.namprd07.prod.outlook.com (10.162.170.169) by BN3PR0701MB1573.namprd07.prod.outlook.com (10.163.38.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1101.14; Fri, 19 May 2017 21:54:09 +0000 Received: from BY2FFO11FD023.protection.gbl (2a01:111:f400:7c0c::169) by SN1PR07CA0031.outlook.office365.com (2a01:111:e400:3000::41) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1101.14 via Frontend Transport; Fri, 19 May 2017 21:54:10 +0000 Authentication-Results: spf=none (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: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) Received: from CAEXCH02.caveonetworks.com (50.232.66.26) by BY2FFO11FD023.mail.protection.outlook.com (10.1.15.212) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.1.1075.5 via Frontend Transport; Fri, 19 May 2017 21:54:09 +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; Fri, 19 May 2017 14:53:52 -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 v4JLrqUS002255; Fri, 19 May 2017 14:53:52 -0700 Received: (from root@localhost) by dut1171.mv.qlogic.com (8.14.7/8.14.7/Submit) id v4JLrq3F002254; Fri, 19 May 2017 14:53:52 -0700 From: Himanshu Madhani To: , CC: , Subject: [PATCH 13/25] tcm_qla2xxx: Do not allow aborted cmd to advance. Date: Fri, 19 May 2017 14:53:32 -0700 Message-ID: <20170519215344.2168-14-himanshu.madhani@cavium.com> X-Mailer: git-send-email 2.12.0 In-Reply-To: <20170519215344.2168-1-himanshu.madhani@cavium.com> References: <20170519215344.2168-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)(6009001)(39850400002)(39450400003)(39410400002)(39840400002)(39400400002)(2980300002)(428002)(189002)(199003)(9170700003)(356003)(54906002)(2906002)(2950100002)(4326008)(50466002)(48376002)(47776003)(5003940100001)(6666003)(86362001)(38730400002)(5660300001)(105586002)(106466001)(80596001)(189998001)(42186005)(81166006)(101416001)(87636003)(305945005)(33646002)(72206003)(1076002)(50986999)(76176999)(478600001)(50226002)(8936002)(8676002)(36756003); DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR0701MB1573; H:CAEXCH02.caveonetworks.com; FPR:; SPF:None; MLV:sfv; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD023; 1:xRUJhD2maWR8txXjwvwRXAAKQmzR9V6ELuy9AcgS1gI0yopXoNri8rTuWRQ3EFiva+MuMwbY7fRFVfqklqUaoQyYnBNWcAqu86PkjXQ45aoTM2V9k0ucYfObDMDbBPzEfOx0uz15IbruRkIdsNNTvlOpTmWa5LB84po3poI9Xx+4XQobVaWxSCttFATOZ13AkiJqzTQx13vDS62PcFJXfSPGjuEL5Mi4LOcZ2zdx8w4Rbb9tS1DQ3dQexPK9mqEKJs44TL05bRl+rdE04S0uzDeCYeLNO6dV6Z4ED/N6AIUKGxpZin3QRT9xUG2L90VdeIvVPrOQavRGP34kicyeJ/AkyVA6GBKW/cHjcSKX0jPIMff0vNyRrn6Il91ate5maS+Mpyh6X2fQxZi5K7ZeJm9NdDdFCPh9CuEXMMjZluYEnOp7woMmWqWuE7bu4KHpXiuQXluodfNXbs5jQdKY3UfyEWijnc5Ypu+7RkvMznWFEimHGtkQK9wGCuFNI/Z22y4iNszbSKWgNQmln2D/WjmKRiZfckv3hKoyPcmX2zBACegTLGZwceBfStZfraP4zFhAKjiOCTYNPv6HlPVoAw== X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN3PR0701MB1573: X-MS-Office365-Filtering-Correlation-Id: 80cee323-cf0b-4a18-4979-08d49f019441 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(2017030254075)(201703131423075)(201703031133081); SRVR:BN3PR0701MB1573; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1573; 3:j/AmBykiR633GbeNY0O/eiBGPbJ8GbdCVkzGsDlPKlirNJajRS6j2+yed10S++zwGK4sFeSkop6vnpUcNsx8VFcxc3nJ1wxvuczN4jXg56Ywc1K2fYfC7gMt4/iAo6Uf/ANP/aLvdoMNdBQC4zCPhvNjnPUmDl0dgACYo9KRyQ38RME12Q91BH0kwYCHpKP+bSeIcszknM9STqZhUMutgEAXpbyAPUn3CQr+6LuSRjRVFWAxo599/hae6AfaQ6iDjV5ve9y2/4B3X1Um8xhmd27KeWstl/kqtQ8T9HvTwCwSCDffcHm9fMYFGxJU1rtK34UObqBHM+LOACFxn1vzuDw1G9QOoEVGowE8aW0LnzpTkpLotW8izAvc2mPHsI8pCOofQTnVlcY0cqxTzda1MrV+w2/LTHimwz9Zk/ws9ZocBq3dP1riKiyUbSVgSB3oRVNmHh690jpy/A2mOenqKw== X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1573; 25:eGWS2bne/6CsMidt+qInJp1wv58tj3Sbrbi/SVqM6V9iVsqhNfTC9NgIUVyLUJiyF8Q2Wq98cfX8P3LZpiZG0WlXvpV/Rwz0kiVz0Hhu4JVGvVZv3ylXM9pT0KlCh4tJzHdndc5yKfn7jq55Ay7yxKkYKMBiq/jQPsBB0TpHHPGVFqrYRx7Jcq7tAPdVya7xPnJV0pVifOLrX2NX8DEJ6hbBEUPjNAdR0e+60f3nnMgRenvCZYEA66GsxtoRb2XwHj0rDHkYtnmYGnjbPslw7Belas2yJxzcuNnusosL2b+Xf+W5CfwJr+xFbsROY8bfeRf0aJRBPIU/H+9EWXSqlPP8LxOTTYvtVUJM3874RE/meGiOcznbFnNBv4/es0VIbVLvVbpmDdyHMfBsSn7PgAUIGbwWDTnABLHDdRcNIpGiVQLp+r9YkZ2FcFLRbBw77rP+5XNKJ3YHguONgUqJGzD4NTuDQx02wFE5RtS4jrQ=; 31:uvnVhLttxwX9Rx8EQ3l6DxCwehNvPoPRrtS6lJZ4Ks7aPP6l2g3/qIcxB+faAFYaGaWHAcfXCajPmew3F5xYWDZUMBgNUbJinAE7D5t9p+BhyGRpg7o/LtCnTf+CioLd67DLflhEpMfTgbi8JljAmVWW/VfqU8/Sfvuupxup6hWZhLgj3XpLl72uh6Y4WafZYVlH/Xj3wU+5WeVmCCpq/G6JBENLDvO1iW6tE5N6RQKR2o/l8S0GXeqST1aTnKMp X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1573; 20:kl+zA4PYYO76iKFkERAuqpIYlAGBFx5YTmkOsXhF2grF5ng61aqKRwiemeJwKT8x32nOTrZxhlv6edpV1nNHBgnEoKCc3zVcpJbRXch5TlQqhJhklPcHsDu/29DsD/IdHGgXc3kP7uXR2OnT7X0IsXnfNy4RupkbQI7dcu0CHh2HAPeeI2W6+F4eGclOKtMZhusbSmtPKd++jmuPvR0aX4JHBG+CCz7AnyVkxBU0SXybs/9Rrl5K7QR/hKHWUbbitcC0IzsGXHs8eUOlwTK3rvalgaEIIuvjBwgBMry1JfqsuWuZDhOEaO2O59DkCxCpxTqPcIRNCPHcQ7UT120MWQd5QKYBD6VM7wwTyM6D+3i3mGkgR9DXe8NEze1Rr+cJL98XM6VjqlJXt3kr1E4T1Vm2OXbN9xU5UgxSO6lFfmqctClDCv7NqpgzPSGh4hCXYKEsqlk2kX0IGDcGzfJgULh0wEXfhAOrYHMfjtHJ+3d9ngyp96wBUFS5OhG6lN3K X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(9452136761055); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040450)(601004)(2401047)(5005006)(13017025)(13015025)(13024025)(13023025)(8121501046)(13018025)(3002001)(93006095)(93001095)(10201501046)(6041248)(20161123555025)(20161123558100)(20161123562025)(20161123564025)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148); SRVR:BN3PR0701MB1573; BCL:0; PCL:0; RULEID:; SRVR:BN3PR0701MB1573; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1573; 4:HTuNg+iY55R7iJwYgD/smycUxjyZ8dlNNJecQYYmnaTgQ+22anw2/gRNyjoEteP4nNtr9HaLyFwS9qicxMiF2cA3BcGTWNCx9EJ0o7D5tj3NeHvsyDKivTW5BpDgqk/Hsbi7TbraWSKDYk4BSJD8AERjoMZqH+sycahXu3lj0ii9Zs6xkNwhQf8b24PxNyc8XScEIlYlB/QVWHPDudnEJ5lsvFfRPh9/c+90A9shTe8UWaxcAmG65tNFR7avRAv/XJUTn6zH3wWwOJEYa+BhSmwYlhI6GTmYAIWWd0oiIoRcdeQ/XXHV3J/nnx28Ajq5VN5Cnk2EYU5mIAs3g9PjgFMd2gp339J0C1mZgT3ImZzY2xAADIAD+b40R1U4pURzLpWwnZ3CaUxdl68dS5VKXXEAnJbFG/rBa+tc/hOYl7+Qw/g5UHAJlxjuIBwAQUerkkgHDsHJL6O9CDM0kwoQTzAW+oWzDIDaupVmXI/RjoxT9BGyaQSdkxvJjpw0PXAnHv+X8FkPJOf/Ekw4Xl19mu9ESvoJHwvmTUfy8zooyMe6UQyIUqJ/1y0e/4YNOD9k2eapujd22+kXl3pgR/10ajw0e7Xlds3PuqJL2DhCR/xAN1nGlwVkn3Pgen8ZeH+8E2R08ep4luCaCN4AZZed9cQtltOgBSwpSso4grFNL8sabEN09umlxIvW0HxzM/22ylP2oJElRNsQC0Kyvww2GsDLkJEnn6OgmB2h+wIeykiZ8bzi8aSmZ5fPz3N2p0HwBUa7uD4RtoGMGugLJmvBKKYRGmWXWCJgDJOHLAj1zC4jUn/EEbnmz/xMghCgMNUBUyAL32eZBVN2kHdY5MEHayE+cRWkLHK3WXYbtKJkCHC4sgHM87MZgyFW3WP4SXuLFkiccnEfnSnrHzqCOmGnsQ97gxaoOrClsLW1xJDb k4g= X-Forefront-PRVS: 031257FE13 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0701MB1573; 23:xzt7bKsFW06zgDQNw/K6V6BlhIbAGeP1AJVFCgg?= =?us-ascii?Q?9eox5zg5huqLBuacmIygqrFUj+LtBTr3w73LmlJL+qKXKuD8V0kI9hf54shI?= =?us-ascii?Q?RLNw+ok2mb0evf08Fh+I5YJsV4fDbgf3I3JLg5bKclPE23delYWebfFzKTXw?= =?us-ascii?Q?9Gty0Ixjc9X8pW8JOLInN1XZ4TZd/j/sD4cqaUDMRnSvEhsRNn9+9D2Yk8Ys?= =?us-ascii?Q?HK62eK5hDmnbMdF1RNSWvRg9Gu2sFbC/xvNhR88ovgmchIymu1FQomJt3M6j?= =?us-ascii?Q?wk5G4XBKF4np/l3m2aq/L0Q5kt9oJOSOqnrei2ZAxaA7wNorfhA+GJvzHDrB?= =?us-ascii?Q?7zkg7eLG+UKAY1hXvH89chTXoyqcdRwCLdyGOMbKhpFnA/TEDPxTre1/kL4Y?= =?us-ascii?Q?vhGsEdOngP/ZetxF+VZ+VuTVVYjcQfzU5keR7PIDCr67rynTUNYhSXNJ84+D?= =?us-ascii?Q?tI6bF5NKY3vk9CZSPL+7WDTjajmO7bWLPNReLgN0JfRe+S+li4howKWKm+3C?= =?us-ascii?Q?TabMN2Sj2l3DGEwm/Ju41/AMgAhaR/lCCJzUD4VXx+I+epL0/nerIHCvGLY1?= =?us-ascii?Q?I0+4s/8ZxkAHyrgZjFovwD4beZ9UyaPOGgs3JmwbIGDiY431aRSWzkUueDvS?= =?us-ascii?Q?ToaP2nQkA6X4V/uBm7zTM4MM44QDf6kfTZVLNKJBR4s7f388ts8y26QKz6e6?= =?us-ascii?Q?94aE5s1Gk6Xaz0wlBz3F4ILPCeDZ75XmsS27DcGsMyhFw5feOmh1DzJVuwGK?= =?us-ascii?Q?ahcGhd+9l0xXdEo1Ps4J70jocLi/4Sc+PWkG+X8hhdqFjK56vYDBXaA1iZ27?= =?us-ascii?Q?8Ji4RRAJADKVKSNu4PFBPBZQ44/MxStLViaDO/vnrXFQsu+uqjqK01IKXQjs?= =?us-ascii?Q?QQ/YF4kXgdTnhMxBf51We3uf6YnxWRhIUXpAgo3yys/PKf9zf5OzDjTOa81u?= =?us-ascii?Q?pAEKPgCy5m0m6rtvlLr4fUQN4aqB7bjpH1jcO6nHYsPiczm/zoyCiShtGxK+?= =?us-ascii?Q?ZjNBLluVACJyLEORaXmjYxue+HVc9PmTOcaPVtKVprMzpxKTFD3vF4VIhovS?= =?us-ascii?Q?LsD9pjeslKsOSgU4V556wwGP8Wu+5?= X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1573; 6:JK4trVDN90stoDUnZM82n8XeHHyLQdLKIEAinentFYLynTr2+Go2jOPXWcPZB3Gf4vFPT1335TBKZV4j0kyiBH4cG2tc0E/Qoi5jwdOA1QuuxUWIcy4UUKx8Zi+CZwKXLkzkeRXtRbcr0UAX9I/SH8iUEkC3Zt6+3e58EQ+9xl5LC7kV7DnnAtpYDBB0M8ip6XG4l+/WG/r1gueD9gIevzz+wk6CVX2opqy9E9shijHfwMo0D4DFlJ5r0VUVWMbEtSmRuz/XuE482od8qTTui2eS/DrBJTGUa7TfGsms5ej/Ubr18FkuaE1hqD8/1RYZ9+bHRCohsjeMnPRufXIXgo60spsQ8NzC6spc0j3ehUvkQoOlLGh1dSXjvQ/yOmayxwjLlDwzrEykJmwvmYgkAtKckoVoWNcr6SjMS3pqzWFszNa8jzTYmPNhnLfS0ZKlzSofcx8E14bXkbDMh9+gpaagj89g+DGcCp6aimfQjYQuP09ObnfnC6wSg9FvN2h93vjUd8NXSbQbtgvSRTSttw==; 5:c24hqir/sDbyNgKPSHA6UDLCf48t4CYaZlaVUK0TDoHiIWE1B/v+VGLCn7uWHtM/a814ZtaEUSM91+en0cZUqw5tc0SPUqm7znRlLc67Fbvm31KSpVJigFkjC9WYenk3/7GVoc1sHRVrtAXFCRtANA==; 24:ICQPCFoGYWcKAVSt+247D3r0s0yclspJveLexHh2QSYnyNm6LKF6jKQRs8E3flKjGo8bkmQbAZmANrN/qcjOrzLu5oRUVvqLOmoIU26+/xE= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1573; 7:0994g7cYpE+D9iKPpuGZ/WVrWKoqdhyfoxEHVWGMS62Tkp1gF24j4i/IKaKE7zXH5rVfDqiQfH7DYSGliBEmag7sRisrJmo28Zr+v6AOTB/3ESFzROOZD1XYJ2b/SeMHVWLQDgD7v97HxsBfrRi++eLR2Q3QQ77tEvJ9XDY3fGZM37CsAtsBzMpHOiizwOWzdP8w8+oyVaAUbqv6s4uFrMETABf230ZHnkFDaRFjna9wdDuQqEfgNFmwxN915DbnMoOe2IcHG2stWKnQSH3qAK1QAPM6/9TWScNj9qWoZMB0XuHEq/prshOZKh+8TKrF+aGYoGJ/7SB+oQA06d7EYw== X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 May 2017 21:54:09.4988 (UTC) 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: BN3PR0701MB1573 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 In case of hardware queue full, commands can loop between TCM stack and tcm_qla2xx shim layers for retry. While command is waiting for retry, task mgmt can get ahead and abort the cmmand that encountered queue full condition. Fix this by dropping the command, if task mgmt has already started the command free process. Cc: Signed-off-by: Quinn Tran Signed-off-by: Himanshu Madhani Acked-by: Nicholas Bellinger --- drivers/scsi/qla2xxx/tcm_qla2xxx.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/drivers/scsi/qla2xxx/tcm_qla2xxx.c b/drivers/scsi/qla2xxx/tcm_qla2xxx.c index 7443e4efa3ae..07f8ad001bcb 100644 --- a/drivers/scsi/qla2xxx/tcm_qla2xxx.c +++ b/drivers/scsi/qla2xxx/tcm_qla2xxx.c @@ -686,6 +686,20 @@ static int tcm_qla2xxx_queue_status(struct se_cmd *se_cmd) struct qla_tgt_cmd, se_cmd); int xmit_type = QLA_TGT_XMIT_STATUS; + if (cmd->aborted) { + /* + * Cmd can loop during Q-full. tcm_qla2xxx_aborted_task + * can get ahead of this cmd. tcm_qla2xxx_aborted_task + * already kick start the free. + */ + pr_debug( + "queue_data_in aborted cmd[%p] refcount %d transport_state %x, t_state %x, se_cmd_flags %x\n", + cmd, kref_read(&cmd->se_cmd.cmd_kref), + cmd->se_cmd.transport_state, cmd->se_cmd.t_state, + cmd->se_cmd.se_cmd_flags); + return 0; + } + cmd->bufflen = se_cmd->data_length; cmd->sg = NULL; cmd->sg_cnt = 0;