From patchwork Sat Oct 29 00:23:40 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bart Van Assche X-Patchwork-Id: 9402955 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 56E206022E for ; Sat, 29 Oct 2016 00:23:50 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 43AAC2A8A8 for ; Sat, 29 Oct 2016 00:23:50 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 368612A8BB; Sat, 29 Oct 2016 00:23:50 +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=-5.1 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI, T_DKIM_INVALID, URIBL_BLACK 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 99D5E2A8A8 for ; Sat, 29 Oct 2016 00:23:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S941063AbcJ2AXs (ORCPT ); Fri, 28 Oct 2016 20:23:48 -0400 Received: from mail-dm3nam03on0065.outbound.protection.outlook.com ([104.47.41.65]:59539 "EHLO NAM03-DM3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S938815AbcJ2AXq (ORCPT ); Fri, 28 Oct 2016 20:23:46 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sandiskcorp.onmicrosoft.com; s=selector1-sandisk-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=g7LLjrK5tfgH+TDr9syK8Th+pI9a79j7vN7aR1fvF6I=; b=FS0/fX++6Vp4dXE7uqiOirP6qxUbgzME05y5m2QmFcqsa5J1bKIA6/LtVsSzjupDy3IbZ8AN67bQVsTOQLi7aHNMIZ+l+atLCkATz2Zdaw6V/+K+Tfyk8UWcCjs1+B2Sq62jxglWuvZKTF5IRTqqhMPYaCE7747Mn1LhD9VnMA4= Received: from BY2PR02CA0087.namprd02.prod.outlook.com (10.242.32.45) by BLUPR02MB1154.namprd02.prod.outlook.com (10.163.79.156) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.679.12; Sat, 29 Oct 2016 00:23:43 +0000 Received: from BL2FFO11FD025.protection.gbl (2a01:111:f400:7c09::150) by BY2PR02CA0087.outlook.office365.com (2a01:111:e400:2c2a::45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.679.12 via Frontend Transport; Sat, 29 Oct 2016 00:23:42 +0000 Authentication-Results: spf=pass (sender IP is 63.163.107.225) smtp.mailfrom=sandisk.com; vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=bestguesspass action=none header.from=sandisk.com; Received-SPF: Pass (protection.outlook.com: domain of sandisk.com designates 63.163.107.225 as permitted sender) receiver=protection.outlook.com; client-ip=63.163.107.225; helo=milsmgep14.sandisk.com; Received: from milsmgep14.sandisk.com (63.163.107.225) by BL2FFO11FD025.mail.protection.outlook.com (10.173.161.104) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.679.5 via Frontend Transport; Sat, 29 Oct 2016 00:23:41 +0000 Received: from MILHUBIP04.sdcorp.global.sandisk.com (Unknown_Domain [10.201.67.162]) (using TLS with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by (Symantec Messaging Gateway) with SMTP id BE.B0.61581.9B9E3185; Fri, 28 Oct 2016 17:13:45 -0700 (PDT) Received: from milsmgip12.sandisk.com (10.177.8.100) by MILHUBIP04.sdcorp.global.sandisk.com (10.177.9.97) with Microsoft SMTP Server id 14.3.319.2; Fri, 28 Oct 2016 17:23:40 -0700 X-AuditID: 0ac94371-607ff7000000f08d-2f-5813e9b908e4 Received: from exp-402881.sandisk.com ( [10.177.8.100]) by (Symantec Messaging Gateway) with SMTP id F0.5B.03615.C0CE3185; Fri, 28 Oct 2016 17:23:40 -0700 (PDT) Subject: [PATCH v5 14/14] nvme: Use BLK_MQ_S_STOPPED instead of QUEUE_FLAG_STOPPED in blk-mq code To: Jens Axboe References: <7460e8b2-2cfd-c0d5-7ae7-7f662d89dad3@sandisk.com> CC: Christoph Hellwig , James Bottomley , "Martin K. Petersen" , Mike Snitzer , Doug Ledford , Keith Busch , Ming Lei , "Konrad Rzeszutek Wilk" , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Laurence Oberman , "linux-block@vger.kernel.org" , "linux-scsi@vger.kernel.org" , "linux-rdma@vger.kernel.org" , "linux-nvme@lists.infradead.org" From: Bart Van Assche Message-ID: Date: Fri, 28 Oct 2016 17:23:40 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: <7460e8b2-2cfd-c0d5-7ae7-7f662d89dad3@sandisk.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrLIsWRmVeSWpSXmKPExsXCddJ5ke7Ol8IRBh/eS1n833OMzeLl+Q+s FitXH2WyWDUxz+Le0S9MFssWP2W02HtL22L+sqfsFs8O9bJYdF/fwWZx/sMrJovlx/8xWcw4 v5jVom3jV0aL9z+uszvwe7yePIHRY2LzO3aPnbPusnss3vOSyePBoc0sHpuX1HvsvtnA5vHx 6S0Wj/f7rrJ5fN4kF8AVxWWTkpqTWZZapG+XwJWx798GxoK1ghVNBz8wNzC283cxcnBICJhI 9G1z62Lk4hASWMokcef3S2YIZwejxOqdT9i7GDnBis6tXQJmA1UxSjz4VQxiCwskS9zubmIF sUUEZCW+737NBjJUSMBOYvnJSJA5zALLWSVeXVnJAlLDJmAk8e39TDCbF6jmz+MLjCA2i4Cq xOw5n9hAbFGBCIlNX+dA1QhKnJz5BMzmFLCXWLlkMTPIfGYBTYn1u/RBwswC8hLb384Bu1lC YAWbxL3z7xkh7lSXOLlkPtMERuFZSEbNQmifhaR9ASPzKkax3Myc4tz01AJDE73ixLyUzOJs veT83E2MkEgt3MH4+rb3IUYBDkYlHt6OcOEIIdbEsuLK3EOMEhzMSiK8Ca+AQrwpiZVVqUX5 8UWlOanFhxilOViUxHkvRn8MExJITyxJzU5NLUgtgskycXBKNTDWy3/rZJ/m9sRh8857b9jP t7A2KZ7dts+/v05h6W7ByeWyEo+/PGTcat3jOVHF9buA9owKqauND34q/Ox0C7n4vGj2NJkJ b0RFc9aHBq5i6rbN/OHfMt3ubf+B0Oebbr0zfa2764iZfK/NjD9CAhuPybAyh1suzv/9w2VK Dcfh+PADpxK5HXqUWIozEg21mIuKEwEMISrx0AIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrKLMWRmVeSWpSXmKPExsXCtZEjRZfnjXCEwZx7Ghb/9xxjs3h5/gOr xcrVR5ksVk3Ms7h39AuTxbLFTxkt9t7Stpi/7Cm7xbNDvSwW3dd3sFmc//CKyWL58X9MFjPO L2a1aNv4ldHi/Y/r7A78Hq8nT2D0mNj8jt1j56y77B6L97xk8nhwaDOLx+Yl9R67bzaweXx8 eovF4/2+q2wenzfJBXBFcdmkpOZklqUW6dslcGXs+7eBsWCtYEXTwQ/MDYzt/F2MnBwSAiYS 59YuYQexhQQWM0o0zisCsYUFkiVudzexgtgiArIS33e/Zuti5ACqsZNYfjKyi5GLg1lgNavE 1emXmEBq2ASMJL69n8kCYvMC1fx5fIERxGYRUJWYPecTG4gtKhAhsenrHKgaQYmTM5+A2ZwC 9hIrlyxmBrGZBdQl/sy7BGXLS2x/O4d5AiPfLCQts5CUzUJStoCReRWjWG5mTnFuemaBoZFe cWJeSmZxtl5yfu4mRnDEcEbtYLw+0fwQIxMHp1QD4/aeS8XPZjcn635+tYV/YrtLcubO57I1 5XFL9V8cmPly1a3os52PA1e+OFg3p+TA/qgbkR6GBzmu63A/CDxuc/DVownNuj7Cq1c9+Rz5 7czzgxPM8rPWiFqvmOTyepFP2rpF3tE7NSMsOtvFzf+mF5oY/7Ll0ZZhP3Bhv0F79d1k/7mf dksJRSqxFGckGmoxFxUnAgCL89jhSAIAAA== X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:63.163.107.225; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(7916002)(2980300002)(438002)(189002)(199003)(2950100002)(110136003)(8936002)(6916009)(31686004)(19580395003)(65826007)(7416002)(87936001)(19580405001)(11100500001)(106466001)(64126003)(230700001)(53416004)(83506001)(626004)(5660300001)(97736004)(189998001)(2906002)(4001350100001)(77096005)(2270400002)(36756003)(31696002)(81166006)(86362001)(81156014)(69596002)(92566002)(50466002)(4326007)(8676002)(33646002)(54356999)(65956001)(305945005)(50986999)(229853001)(65806001)(76176999)(47776003)(8666005)(7846002)(356003)(586003)(23676002)(68736007)(7059030); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR02MB1154; H:milsmgep14.sandisk.com; FPR:; SPF:Pass; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD025; 1:3NdkCRf7YafEIKjxNv1N0uUUuj4IyrHhZqRDtmqSkgSB5WfKkvnVQwN3i6CwktjciKxYfCspL75FxaTH+HG1mk8dj2PHB/1/dxeoSeve7t/Z16FbPhrupX4dsGh0xJGjAlJ9RxKS9lqjSGao5xjDa6tDanG4VcaDq2Hj/jWb3xbyIecE7wPtXxz2ZD9d8zR8nU0ozNqkbWygYaQoIrMYvuJ0x/QlAbbPo0gzjSZG/U4O1uprNIRW5p604bbmOX3tIIZy8e8+zQKZ5BbS7ZtvtpuDeU58TBRjFYjKcswh6ABOuNb9IMFirKimD5iXyq5qWIB/UbwreHo4HPXmh7tIGrNKJI4AJizG9Z4KQhbfdVWbQXRH68876yHSx/XvHnmTGf6hngKw461pDGtxerC8ydmBmaL2xqQtIeRCLOB2yyr6tCFoSOJSNn/FZZdm/Vq3FCg18IEElRhgIMxZIEC3Nd3MRERYZWn9bX1U3am2CtwfsAlV79Ax6G0mOGfYFVVbx2XfGdx1//AF1u2X6Sie/jV05L+2ovl3fI5XP0JMK0U20QlZwrSDCG1iurh10OtC X-MS-Office365-Filtering-Correlation-Id: cac939d7-e91b-4362-3f4f-08d3ff91d6a5 X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1154; 2:FV3sqsCar5Er6fynFlKrmnRvFFl5srCRLSs6Hh+gGajOIyB6oXSfuep15C8hfim7oI1ACtsIfl5qQJjOsaCF5LbX8guXDn3dYF3JQhs095doAi/EMaq5/Q1FBtPxMq4HJGTlRXwH7pb1yhrOrkiG1YsXH1avksEYZQyvU8Gw1bsP9PdfsPaUdk1Dj15lFObCp/1VoKOKP5yQrngqMwVwDg==; 3:zyh0vTixnpZljdU4JE/wkWaF7KW1WrvEjBGfD+fe6V5V8RxogS6MEGFHOB8vO5H+MysLRWs7xvkOiEnzYaHJ/x8/WGlccwAZWUGkHcndBd/yDKXrWdmrsgyuaN9i5Rv6YOkkwKR7hG0ydiXEPLDOn+AesbUjQYuMmHi823AM7IWAUroTA1NLTtZbr4m4fHbkfouXD4WZaH5GSF+a/BF6OquztksKK6Vrbu6yIhGNLOfKrHLYYutd5h7Hq7o9PnqmsjKXqVvgZXk7r/yjcbPkPDZo4V5v/wfDVCWYJ0Njn9Q=; 25:f2zdzM+wQPnk/bSjVSJS5JF8dMBdltnRM4+1flv4Z+fufw6AiZUa3oeFxrritrnpEJqvYDqLH6UNxOsU97hPximAk0wOHw3QQ6q8qjo4TfvDPrd8bbhibHGqRAj1E1QODWdJbJGvfHrytJSWos64AJBJrufXCED/uIY2nZb7oy+id6nw0tarFKOOJw2h7gwRa4SeaIOOFUb/4ko783wAM0hj7RyQa8iPq4Kwa1O76fRgAODZZxZAE4J0OaC+kPELoIUwB+DgVZV5UkkhiUmMF2qTkdkGzPdlSlPyvBHZJ3nDy07XulvBirzQ7398vYbUZtMy37VwEtD8TOf0LaLUj9kysZlZ9+RjfkdOoI1k2bgQWJW872GHxlTXooZIX//79EbXxES7hj3pEore2vKQLgS7GvJd74m YmKKDkO5m08ZslXsYpbq8WEUDRvbVW0LD X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(8251501002); SRVR:BLUPR02MB1154; X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1154; 31:R18s/F0lGzp+C09XQLviiJ4WcpsewTZRjMbEnv3/+Qv9tm6b8IngOkkVcURNBqIcvx7Odx/gcu9tuQxDowwiC8Xgamwz4LKMD8PA4j0eCwxke1Q2Jqny87gBwe1Kv1GCI+khIhdbhr9i58ElF3OXFk+MNyU+OuzmqKnuw4eO9V6L67zNaJbm/nCIxLBC8JK4ZGWZoZhLw3/2BtGoDKHuIqsWjjOnElGuwE98AY65lflEdT578+9M7YZAwKHW2cAWiYtXGIi5Bi7qFyY9qtz2sQ==; 20:yV23ljVkSCNROmGvl0TtbjB3l5HT7j4uBn1NyrdQZ1OlK7+KnyWLInWHKQY5cRSxpv6hHSsHJgnsfRvMJ/NUTKeYfO7a/4pUGmr3Ajq0+7jXv4miQrr0nL5HBHtXbRaqSXSIuF5tpHmxXbuudgwj5hhmGTbWjSQjzsE2KnmlNKIsk/jsR7t4f6MEK0NOn9kRauD0ScNqSy9UEdnUfV+irZ08GZH+FgaKBBmHAOfWyLaJR7BBunh5N3Y3PYTN8O4sEuj3M4R2B3OFKmqc7j/gTYiAqXSWSjid8izXRa0XZh7zYFKdRsRpkEvJUsoBOGBjWsH1VtfoSGxb3p0ghJQG1H8mHB6lnaTdmdXEBPKaXdnA4+jA8YRo/Fujo9OzwFMpZagkVLDn6zrBUu/YI9mTS4tqCsOZePLyn5sxqGZVFXiC26dk5lHuJuGWfwp0Z7smNLcIe99b4dSsd5IjokGsXw//hCnhuQsRzho2koAyPpYJaTL19xt9tE9gL4zdF/ve X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(42932892334569)(228905959029699); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040176)(601004)(2401047)(8121501046)(13016025)(5005006)(13018025)(3002001)(10201501046)(6055026); SRVR:BLUPR02MB1154; BCL:0; PCL:0; RULEID:; SRVR:BLUPR02MB1154; X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1154; 4:lkKLP0aUAOVHtIp834qWhGmC8E2vhBShzOqgDX3/FAyg69Sxd3Wrov0abr4gd0oj/+sYZ+UStLP2d7e4ou/ApauHId2FI5zvE7n2Wn2E3ccyaIqziMEfJ8KOMPTBcXhhHZdkvbFJamnqd18k9qYGHd9Wbw5k18NhJbVo3ptnrBDV3JOf0T+J3RO7QCHcILaRWo1CUJZzGknYisyfwD43IDTgFX3JE9yo+YwZOAe0ls9IDa6doA27g8M50bxbTkxekpjI4Tz444mgDIN7UFjilcuY4QPBldQ5VJJ1AYGa9HJ5ngc+tB43Z/Hl5yr5C08YJkrRjMW2ZvLZv8wpQ6wQx54TIXZ1iFBWdMQDcSD6U6PkN3OQS0cYSfPQGQ2yGIWs9OHgDvRPwIFbWJIRAei5pmGrIbcpNEnOOWDoFydSerr7bu1/lmixpVFSqXamAlHpxnbOyM5Z227ZhBIXrm2mQj9Ky2nAoUQX4ugBP67plb4gVE9BTpTvJEMuJR4KLVXEo6ReSiSTwnlhuMJ+MU6Kaw5y3sHviQmxk/gdu9mq7zo= X-Forefront-PRVS: 01106E96F6 X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCTFVQUjAyTUIxMTU0OzIzOnNSWG81LzQwbDY1Z3I0aWlVVzlTVlExWUR2?= =?utf-8?B?enQrajBMNFlQZkp2a2VrQjFnRnVtV0YwRVNJQVNwblV0UzhPTnl5RGgyMytv?= =?utf-8?B?QS9ndFhIT0xGbForNCsyM0h6UVpsTU9kZlZDSHgwdm1CaFN1ME9Ga0JyWmNm?= =?utf-8?B?OS9KU3VzL1lGelhjNlBCKzhzZzhmTmpLMUpLQVlYNXNEeGpTQ3IxRjFEbFZL?= =?utf-8?B?dkNZTXkvV090Vm5HQXRkcWZ5NmVlY2txdGF1blFtY0Y0ZTNoMHFENWpsNFk3?= =?utf-8?B?TzBKamQwU1lVVm52SUo1RzJuR2lQN2k2b3hOUVFxY2VhaWFYaU9TU09saldC?= =?utf-8?B?enVHMnpNc1FNUllVNmN4USs4YVVHeittRkRRcTNXaEZVeU5DNm9TdUlWcE5X?= =?utf-8?B?Nm1qdGIvL1NXY0dQT0tMeE51OGRUSGtnTDN5L0NFSnMra242M291SHpoMWdj?= =?utf-8?B?aTlPZHN0Sk5hdFU0akZGWmFqdGxGQlg0WUVIYnczeFhUbFlodHJJTnRiejFt?= =?utf-8?B?TFovZmN0Q2pMeGdtbkJBbUF1aEwrbjArSUdHTVU5eXNzQ0EraVNMa0t2dy81?= =?utf-8?B?dS9Fc0pYeS9FeDRUWG52aitQbDQ3c1l0S1E3eFZLSFBVQWV5K1ZWSStEQ2hG?= =?utf-8?B?dkZnRUVJK1FEVDBrUVp0WlRpdlprT1hRV1JWL1Awd0VpQThYT1V0TlFWZytt?= =?utf-8?B?ajZQWEhLNUQ1KzdPalV4aHhYdXlZQUtKMDU4clJQK3B0WkcvQ2FTbVZSRGdq?= =?utf-8?B?VTkyZG5EY0VCWHhtQVJIVGRVelBaSUhKN2xpS1VvTWIvYkQ3bHZTNTVUQWlF?= =?utf-8?B?SCtRandyTXNGdVV5S0x6blBCUXlNZi9yUmZkT09tbmFFSkdYMWw1VGtneWUv?= =?utf-8?B?UUhpQzJSdnUvRENyUmRoVERKU3JIQ3lRaUExRnhRVC9UUWg1TzZRcFBtcmZU?= =?utf-8?B?cCtjL2hkOUttMGVCMTBOYmhOQ1ZQMlBmdzBhZUZjVlBUaEFPSXR4UkhZMzJY?= =?utf-8?B?anNYS2kxTVFkYzZOSzBmYWxUa0FvY1lNR2Y1Tmg2VXpoMXRqT3Bob3M3OGNY?= =?utf-8?B?RmpvbGNvLzJHR28ySC9yRDBJMmZIdFR5SEZWY3UrTHAzcUkwQVFIU3VsYVlJ?= =?utf-8?B?MVVnTkpuODdxcnlFeWlMazd0MldicUdKd3R1S3ZkalVYSmNKMGpXdGhzaEov?= =?utf-8?B?N1ZpV0JCVzNhV2M2VHpSYkpLZUU1Z2hqbWNleDJsQTdOV1FMMGUvbVpVck9T?= =?utf-8?B?SnFURC9jNnkrTDFCZk1TMnBST1phMWUzaEcrS1FsVlQrWG5zSHNONm5Kc3ho?= =?utf-8?B?Qnl6NDNSS0Q1REVrZG1nUytTQTM3Y0U0ajZmT1VxTFYzVjRVeE13b2tOdlVI?= =?utf-8?B?eFJFbmF6S2kxeXFqbllOMTU4K0lIdk51WlpvOFpwczVDV3A1d1V5cUd4SjJU?= =?utf-8?B?UGFMdWFaVm9CR0pkdW03c0JuRHVxa0FtT3BVeXBrbkhoMnJLSnRMbkhiMGRu?= =?utf-8?B?TzgwOTRaSEFVT1ZZZHNoMjJMUU9SeklKSEk5RjVSaXdEeVdMUk1ZWmM5Sy95?= =?utf-8?B?c1ZtY1F4Risyc0UyeVQrWEgwWWxDejY2Q3ZDRENQWXdHZjcxZ0M5TE40SFg2?= =?utf-8?B?bk90KzQwVGlLMzFTRWJvVGJjeXdpRFBtY09QS1d3UTk1cjEzSGt4QTB2OVgr?= =?utf-8?B?RlByYUhZNkxuKzJsZzdwMDVZS3pna1dxWi9uUkJERW5QVFBvNzFhT2o5VVUw?= =?utf-8?Q?/ZykhcnyheWlI5jXDa28yH6hovwJj4ZnDxvAc=3D?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1154; 6:RBQC5b1wSkO5/uVAsdyFiyxrxvdrKl6sNBGT36DG+1Z4EHsjIYMY4AVm2Vuo2FB14B72okPhMK6c8gEVn0JcSmg3xdxdO9o6iOj3SP6oPrtUxL6l13CFNaMmjZ2/e9eiRzKs73SJLZIzwbELF7J9DlZsKYShNpb6HCNgWjfsN4B5OBTRb9Ms9eUYBWPls5JvzOjrwskIFd9QWzdT7CS9N54X1e3cx2jDrtxvNOAYbEr36XsQBXhDNXP4f5aj7e44pL0x1ocXBSKX5c5hH9GrvhVNgMpfuva70j5Snr0fCosYTrNHxT954wJLlbsig1I1bPxNd18q77uN5yEnpNjEUMonAf3YoaAB+tnbdQBzLjs=; 5:atnllpnRUT0pveM4PBcGkeO7wqLT80YKXgFD7RdMz1EKog701TIlUuJj4Lc75PJsyCW4KRKBSyEVbVCILgai2EeugvdUKSnmZOxpHjy+4lu7SVROvaTagRGJg2PuuDndkBO/zRsucqgzFp3TtlEe1Q==; 24:fUY+E8OwNmIyWqMIR41P8ysilsY+s6N9dMDT6lKtSvOWBfNfFjMynzGp5ImpJK6QfwF0Qg0m8dHiiAkaHzMVcfJJVt4MwAe6zX8puHu1QZs= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1154; 7:ZuTm9gdLh072ZBvLsIbNgA09fi2NS4oc+0u7bv4zSN6FEz3Fj/YL3/0Iy2ct2f8Z5b6xHjf8lGilTgS3OaUbZM3HQNas5O01O/9l0+PUkAGiVg8UwYcbf/3zdAsXKrwxc1/gcKzKsHj8zPsfXMPBnoSvgsb1gmVZCPFk+QPd4tCGABdhMW08JJpj7Jn/NkK1Wc1xqCtkOQaDW46tJM0XumM1tUKZ60jb2JIOsn5eQLg1dr/tknvL451bZQOcIAfW/hQYf/hOdw5DMvvfHo+v2PIwVVhzOXyIzfgAM4v/BhUPu1MYXp5PMiNqIJjb7vG498Zt6lUK0sLixyGReBX4ODs6B6PXjs9pyw9w1qRRckU=; 20:xgr81X36b7+hPoo1oZR2MmLZkAVce8eB6DN45EGU+bWOFt3Rv69QZGYG3v9yUgWSxTXt2+epSJGe5TPoFWwLLEsad1vfLMLeSLA9BE1jbjHCcOnRKd/yxZnddTNTjfdxrjQ2bUCwSfduLbfwIWCZBh5GKFZUpohpEna9sORHhaQBO15fIocAxN7v7qcVBaZD90dlluIuYCbTbbdJ76kgk4I/nQimFg8+8teSwbMOJHZbrPqKxP2oQAF7t8oeHRbg X-OriginatorOrg: sandisk.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Oct 2016 00:23:41.3075 (UTC) X-MS-Exchange-CrossTenant-Id: fcd9ea9c-ae8c-460c-ab3c-3db42d7ac64d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=fcd9ea9c-ae8c-460c-ab3c-3db42d7ac64d; Ip=[63.163.107.225]; Helo=[milsmgep14.sandisk.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR02MB1154 Sender: linux-block-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-block@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Make nvme_requeue_req() check BLK_MQ_S_STOPPED instead of QUEUE_FLAG_STOPPED. Remove the QUEUE_FLAG_STOPPED manipulations that became superfluous because of this change. Change blk_queue_stopped() tests into blk_mq_queue_stopped(). This patch fixes a race condition: using queue_flag_clear_unlocked() is not safe if any other function that manipulates the queue flags can be called concurrently, e.g. blk_cleanup_queue(). Signed-off-by: Bart Van Assche Cc: Keith Busch Cc: Christoph Hellwig Cc: Sagi Grimberg --- drivers/nvme/host/core.c | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c index fe15d94..45dd237 100644 --- a/drivers/nvme/host/core.c +++ b/drivers/nvme/host/core.c @@ -201,13 +201,7 @@ static struct nvme_ns *nvme_get_ns_from_disk(struct gendisk *disk) void nvme_requeue_req(struct request *req) { - unsigned long flags; - - blk_mq_requeue_request(req, false); - spin_lock_irqsave(req->q->queue_lock, flags); - if (!blk_queue_stopped(req->q)) - blk_mq_kick_requeue_list(req->q); - spin_unlock_irqrestore(req->q->queue_lock, flags); + blk_mq_requeue_request(req, !blk_mq_queue_stopped(req->q)); } EXPORT_SYMBOL_GPL(nvme_requeue_req); @@ -2078,13 +2072,8 @@ void nvme_stop_queues(struct nvme_ctrl *ctrl) struct nvme_ns *ns; mutex_lock(&ctrl->namespaces_mutex); - list_for_each_entry(ns, &ctrl->namespaces, list) { - spin_lock_irq(ns->queue->queue_lock); - queue_flag_set(QUEUE_FLAG_STOPPED, ns->queue); - spin_unlock_irq(ns->queue->queue_lock); - + list_for_each_entry(ns, &ctrl->namespaces, list) blk_mq_quiesce_queue(ns->queue); - } mutex_unlock(&ctrl->namespaces_mutex); } EXPORT_SYMBOL_GPL(nvme_stop_queues); @@ -2095,7 +2084,6 @@ void nvme_start_queues(struct nvme_ctrl *ctrl) mutex_lock(&ctrl->namespaces_mutex); list_for_each_entry(ns, &ctrl->namespaces, list) { - queue_flag_clear_unlocked(QUEUE_FLAG_STOPPED, ns->queue); blk_mq_start_stopped_hw_queues(ns->queue, true); blk_mq_kick_requeue_list(ns->queue); }