From patchwork Thu Sep 29 00:02:50 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: 9355423 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 E3A016077A for ; Thu, 29 Sep 2016 00:03:01 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D4DB62969B for ; Thu, 29 Sep 2016 00:03:01 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C8DA0296AD; Thu, 29 Sep 2016 00:03:01 +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.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=unavailable 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 5FF072969B for ; Thu, 29 Sep 2016 00:03:01 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754834AbcI2AC7 (ORCPT ); Wed, 28 Sep 2016 20:02:59 -0400 Received: from mail-by2nam03on0082.outbound.protection.outlook.com ([104.47.42.82]:35264 "EHLO NAM03-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753938AbcI2AC4 (ORCPT ); Wed, 28 Sep 2016 20:02:56 -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=2L3kkYBnZHgk67WQWF7OQsG2zZAa5zbhCOg057eGgHw=; b=aHx2MW6F52KWCjF7hTHlQJstrDXdLwYzg2VN8SQsAnO8sipH37Npz2+7AwKeV/eYTiIz3et+bChFN0jKE8+L+Pbn6zYQ2VQhDuvtsyOPhdP6hy9yQg2glApbx0t4RZrfXunZmQ88PKiF2ildMyUTq4IF7YRDPXhsxXhEs4HTyMo= Received: from MWHPR02CA0007.namprd02.prod.outlook.com (10.168.209.145) by SN1PR02MB2144.namprd02.prod.outlook.com (10.166.68.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.649.16; Thu, 29 Sep 2016 00:02:54 +0000 Received: from BL2FFO11FD015.protection.gbl (2a01:111:f400:7c09::121) by MWHPR02CA0007.outlook.office365.com (2603:10b6:300:4b::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.639.5 via Frontend Transport; Thu, 29 Sep 2016 00:02:53 +0000 Authentication-Results: spf=pass (sender IP is 63.163.107.225) smtp.mailfrom=sandisk.com; intel.com; dkim=none (message not signed) header.d=none;intel.com; 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 BL2FFO11FD015.mail.protection.outlook.com (10.173.160.223) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.629.5 via Frontend Transport; Thu, 29 Sep 2016 00:02:52 +0000 Received: from MILHUBIP03.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 5A.9F.61581.F185CE75; Wed, 28 Sep 2016 16:54:07 -0700 (PDT) Received: from milsmgip11.sandisk.com (10.177.8.100) by MILHUBIP03.sdcorp.global.sandisk.com (10.177.9.96) with Microsoft SMTP Server id 14.3.301.0; Wed, 28 Sep 2016 17:02:51 -0700 X-AuditID: 0ac94371-5f3ff7000000f08d-2c-57ec581fc5d3 Received: from exp-402881.sandisk.com ( [10.177.8.100]) by (Symantec Messaging Gateway) with SMTP id 6B.A4.02783.A2A5CE75; Wed, 28 Sep 2016 17:02:51 -0700 (PDT) Subject: [PATCH v2 3/7] [RFC] nvme: Use BLK_MQ_S_STOPPED instead of QUEUE_FLAG_STOPPED in blk-mq code To: Jens Axboe References: CC: Christoph Hellwig , James Bottomley , "Martin K. Petersen" , Mike Snitzer , Doug Ledford , Keith Busch , "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: <9faa7607-eb3e-ce41-b09e-1e10492a5f45@sandisk.com> Date: Wed, 28 Sep 2016 17:02:50 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprDIsWRmVeSWpSXmKPExsXCddJ5ka58xJtwg/ZmLYv/e46xWbw8/4HV YuXqo0wWqybmWdw7+oXJYu8tbYv5y56yWzw71Mti0X19B5vF8uP/mCzaNn5ldOD2mNj8jt1j 8Z6XTB4PDm1m8di8pN5j980GNo+PT2+xeLzfd5XN4/MmuQCOKC6blNSczLLUIn27BK6Mlw+O MhYc56t4f8i1gfE0TxcjJ4eEgInE6kedrF2MXBxCAkuZJKb0r2IESQgJ7GCUaDmkBlM098NB RqgiRoktXd3sXYwcHMIC6RL9zf4gNSICshLfd79mg+i1k5g2vxmsnlngA7PE296jYAk2ASOJ b+9nsoD08gIVHfhRDRJmEVCVaDl2nQXEFhWIkLj1sAPM5hUQlDg58wlYOaeAvcT1pxogJrOA psT6XfogFcwC8hLb385hhrjyJ6vExAVcEBeoS5xcMp9pAqPwLCSDZiF0z0LSvYCReRWjWG5m TnFuemqBoYlecWJeSmZxtl5yfu4mRkicFe5gfH3b+xCjAAejEg+vwYnX4UKsiWXFlbmHGCU4 mJVEeF1C34QL8aYkVlalFuXHF5XmpBYfYpTmYFES570Y/TFMSCA9sSQ1OzW1ILUIJsvEwSnV wDhD3vbUrueeDYdkzogml/IwS2l1vLaPu5yz+EgaS77OzHXnPCL1frm13zK6aRR0rPu4rfr/ 2qr/S3o+1AUEvH7B9n7bk9PHU7Ycu3yaVVJBVsjhe6WD7XvxnfsaxTvbdWR694ryVLjtC34l tSGdwcHlhVHPlp8cKlHTS79yx82adOX+wklPNiuxFGckGmoxFxUnAgDY28XHrwIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprKLMWRmVeSWpSXmKPExsXCtZEjRVc76k24wbZlOhb/9xxjs3h5/gOr xcrVR5ksVk3Ms7h39AuTxd5b2hbzlz1lt3h2qJfFovv6DjaL5cf/MVm0bfzK6MDtMbH5HbvH 4j0vmTweHNrM4rF5Sb3H7psNbB4fn95i8Xi/7yqbx+dNcgEcUVw2Kak5mWWpRfp2CVwZLx8c ZSw4zlfx/pBrA+Npni5GTg4JAROJuR8OMnYxcnEICSxmlPh/4ChbFyMHh7BAukR/sz9IjYiA rMT33a/ZQGwhATuJafObweqZBT4wS3TducoOkmATMJL49n4mC0gvL1DRgR/VIGEWAVWJlmPX WUBsUYEIiVsPO8BsXgFBiZMzn4CVcwrYS1x/qgESZhZQl/gz7xIzhC0vsf3tHOYJjHyzkHTM QlI2C0nZAkbmVYxiuZk5xbnpmQWGhnrFiXkpmcXZesn5uZsYwQHPGbmD8elE80OMTBycUg2M Zy8sPrjqjfnNZ+LbIwutWHPFzPnCwy/cSwx9mnouXO/ttUV9xlbrr2hbXV91pGXloyzh60fk N7Dayz1+uDFlP6NtZozzDzedu2vmv056mcDrcOj6s9+2p9atu3tLQD/YYsPWfPcN/DGKl7rd whbtrm496eldXtnYmf7q5QdGZc9tPr2vL9X/U2Ipzkg01GIuKk4EAJV/iMgoAgAA 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)(3190300001)(189002)(199003)(356003)(110136003)(50466002)(23676002)(19580405001)(36756003)(92566002)(189998001)(19580395003)(69596002)(6916009)(2950100002)(229853001)(65826007)(64126003)(97736004)(7846002)(33646002)(86362001)(626004)(31696002)(31686004)(586003)(47776003)(5660300001)(7416002)(106466001)(4001350100001)(53416004)(77096005)(83506001)(65806001)(8676002)(305945005)(87936001)(230700001)(2906002)(65956001)(81166006)(81156014)(54356999)(50986999)(76176999)(68736007)(8936002)(4326007)(11100500001)(2270400002); DIR:OUT; SFP:1101; SCL:1; SRVR:SN1PR02MB2144; H:milsmgep14.sandisk.com; FPR:; SPF:Pass; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD015; 1:5QPmLFn0qyWqW1ti29pR/CnW0PQKkYwqYaJKYXGm5hb5XbnDHOAwR/TPlqiU1GTEbYxG5jLFknKfy9apqmroNanbfEWP0Ra2TEsqaRLzUT1IMlgojKKIDglT4BDg5+Mogy8YCESns5JUGrHDQpYvjuqErWJm48VHWPKxa9KRIa8B1QSticW7TNdKrAdkYZjB/eMuUgY8eOSjnda94/tPZ8c21FNkyPtZNnqwg405sHdS4VMUMUdKuGU6kCj0lOvrlSFeIzC+U4zFks0/XIXKJ7X5ctgOvccb40RtjKQB+daewGAeT68ASIQ9cMJ/ntsd7RjBK/3FxSEI7tbxYMXX3CZY0QuZuIlGAmxVNE4NkG67fieF3/E8W62aDdxbc0Hdfnt0Zh9KFrtxqEAItvB6Bdr4rJum0TuUsZxrhArIMpS3Ibs0Gu9Hj/cIisUMhwCN09sTfN6Z2VJRu03vA/J6qc4hJqvTIE4U27QjWfcK+9E13w/9ZZVrY3ncsq2rsOspi7vCEYgnSzgScncbD/wWAY3QOezyy2LR200v8zAktAQoTL6MLy+vM4+ACOzieCylJXydrQVqWjMIT9NTfYG6hg== X-MS-Office365-Filtering-Correlation-Id: b50b7458-5702-4737-e202-08d3e7fbf5a2 X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB2144; 2:PwqmiKeDtNiHGIMVaQz35D494vNe3v4Ir6wFlR5VNK4vdKHyVu7g0InutozTkbDhLmZoyyG8E0krf9Lazl50wPiLkDYUFgSXXI8eUuR13TRA8fiVOe+Yig0AQW3uEP1mZMRg76V5+e+7bye/OrOMCHg7D90IqNIPMEFknsMXMDO+DXfBT8BfgP2Z35XqrAQ7MfDbydA5WIeVUmJEbGIV8Q==; 3:TORmQVoNv8MN+vTn2wgJpVBKXMXS2zbo2uMK8pSfybXM8vFpKqxkE4N6N9bZc+I7XrTqqio6qAQ0rWYSxfxE5u9udshoKmKZHamL4vcFFJZsHko/c719nQ/D2prlyarFmkUwrvv7tRQYvOmgx21ezZIDKrqNOuGHF0VA3QRAZTnzjCe9K2aKcYqyA2HLYDLFPEXnrDbva2Q15J31gb4CvpcbazmByfpW9/P9OreaFxHdCi0ZdgubJrMt33KyS+nrN0vQJBgYfwme6cbCkr49VclszsBATcAaAr0O7wAxrQ0=; 25:2HmPjn1ObLzLpjjCMTd/NXHk7CLZBXgVRy5gKfE1tEbTdXmhtdZEkqhp8q0uetsDNFCNk0FmEdFQB56j0kRv/6Vvpp4rCKJEn9VoiSAToV9RupRzIXJ1VAhwDu1oNf4GqRk6vJI5C74sy2o5G603TXNOlKdudniFgrgrVgtR+4C4FvoexMplOwBpEh2yTVPk4wwCB0mp6jl4LArlek/ZzvDoKJzmIWZhu7OtTrFo/AFZ52WvyvM6eOPg2Pu/08kxO1pt73iJIojiNtAda7ocZbTGIrNEUmeWAziFV0TOj31sryYhthDOITtBKwaU1nkak/C1lrQ8CcW2xyJXjI6ReG4qcPUOMXKdCHv5bGD5jU1JmoC7Zfnn7u3+lw1tS6wY7p3yk7fd4DqHufRpVoy9MJR2bqIlGWA tF9lw1gENBdArbrD37zEf8PCxAP/fP8IV X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(8251501002); SRVR:SN1PR02MB2144; X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB2144; 31:coCffC7sfay9TR8ySB6xqqpAEeHHsM9RoWwf5n77vovnNCxPLps4D9RMdYkN5T1shl7b9G49SCEMgQucoJW3FXsXBY2+2Alud3h650i5ecRj4wpBZc19CG+1iB/hN61PgIspZ5mKIVCsLIeeTVaUXHpzzMDBwUtAKwwxecoH1FlBmNXm5bDQL5Udq9ePnabAbzVhxcyCAlE/BDIPjOTQwAnWMjVM8A611f50wV5bfsrkzu22zpuHZJSpvYHpQcx/; 20:cg5XkuMk1V1FQePIQ+ng4xR0PJr89IrsZK5TuSOHJFypL/uweXU/fidhR/kC1fmfo5N4G+08nxbBeJLl7FRSWt4beaM5oSlTKI6uOx11unk5roM+CEyKVdIVH9ncvy9BQi6lj+J/tUW9Wh/inAPZHj/XY1Y3BQEM/1+FOE0nrY2X9XBw27ZPt0A5SAtm9nmMDowReO6dHi6K+2asR1wDQAvFsIMRegvp4MPO/BDsjd84kBQf16jpRrWYXa1+okeCRroKLRoDGwwBUmHPmSdktYBXIP7V5XcqE4+E00KoDcS1euVxYZ3wmJhj1+KuJEeR/GsQUXg99DVaIHLoZ2DjwOUTPcJQqreJrEydhG6lqifj7wWDeDgefQgY2K1frSwpBETlewpJzzfzNvIwxhiInejNHDnEdvcYZ81vQfLLzo2rUHZ9i24pdGVyHGKKKIMod6vYLN9d0siVk9fZtQy/p3/LSv94sTaMHK/zOoMfp6vtBV93VoFsD2D5On9aCSIS 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)(13018025)(13016025)(8121501046)(5005006)(3002001)(10201501046)(6055026); SRVR:SN1PR02MB2144; BCL:0; PCL:0; RULEID:; SRVR:SN1PR02MB2144; X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB2144; 4:yPZTKdf/PoQr5i54h4FgNmf8wgGC2hxMKjmXT6ooCxE2YoZKqwv33Muj4dLJpfl7esaKDJUd1UmALmbq8a2nAdK3+GhaRN0c4I1kc+yOvzSkiOZhBeHsVg+u/yi7bo4DlVR/UPtk+OBSV1TnxYqusUbNqS29cHZezsbl+NUgKS6150rQaBWuri7gfhCIwqfxfRSEx2KFElO8nvgCPFZI9Yq4voeyheVONUhO/7YCaN6467PwyIODG4i+qCNolH+iJXx/neum0U34Pb6VBKbDx9gCl+yLGlgO8ruSYlQkcGtpLdpkcD80q2lP5JS1FFXrmAnbvX5AtqbBz9WU64KOvHuFjxzQnT6sG8zZ75uAx14j8d+3Td42Ej08TtUlaTXEse8rfAEwOwFlR0ft3wsUPhTPHIHESVUi99Eu7a1VnZfQNrGkEp2H2QzxVLiVlCvcZTlsEcbTtGlt/Fyf50yX75LePyb5nPRxXtya8s7AOe1LiRbF0cgc4Z5h28qc4OMMQMoHZKFpySM5PHHFI19Xv8Do9dvstb7uB1Z2Rkd0jFc= X-Forefront-PRVS: 00808B16F3 X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtTTjFQUjAyTUIyMTQ0OzIzOjE5WmdCbUFxdjRkdWhPMTZiNXRRR2VtKzZp?= =?utf-8?B?U0FDcnR1R255ZktkWkg5Qnk5UXhaQTlmUE9ISTdheGpqV29RVGNWNHFwZlBx?= =?utf-8?B?NUhiSVFSaUg0NkJIOXFaZENlSStDQ2VKRTVVMUQxOXc2dGdveWxwMmtFWFFz?= =?utf-8?B?YTAydDRYbGl2UWlRR0ptVFFsVTlXMXhXMExMVWE1OGxqWTJ4NTZNQ0RuWjZ0?= =?utf-8?B?YWRlTFRBTnVoQW1UQlMzUzczaC9sZFFjTUtwSkE5eTJZOTB4empGZG9EZ09O?= =?utf-8?B?V01vb0JJS1R5a21VaHFmQTBWcU9weWtHbWlENHlvMC9kRUFoVTVXSWVua2U3?= =?utf-8?B?UWl1MWR0bjJzZGI4bUlBdUxhdnpQUytRZHdrM1pUR1N2eFNBNzhCK3ZLNFFX?= =?utf-8?B?aVk2YzFKR05qdWlLOThEWjlLa3lZelpTZjZ5WHpMQlgyT2xBRmhwL0ZXbEVM?= =?utf-8?B?a0JHNjBlc3JzTlJZWFRyeGlnZW00MCtnbTh5V1kyN0JDbWM0WlhWb0JVWVhW?= =?utf-8?B?bXRjOVpUZDlYVHQ3WDJWeS9kR1ZNbHJJaXR2Z01YMVRlSUJsWFE2SDcxNjlX?= =?utf-8?B?aXhaclF0QjJBQVA4cDBwclBQRHRmenEwajFGbkprb2dFbzVDdjQwa2pKNE1W?= =?utf-8?B?RVQwZ2xJNUZMMFE3WVZQVTc0Y1Evc0M1V3N1UUJlNkErV1dnTmVXWG1WaUZz?= =?utf-8?B?Qng1bnFlbzdlL2VWWGpSQXg5ak1QZnVNamYrQW5Pa3FPR2Q0Ri9JTUEvQmE5?= =?utf-8?B?aUZKYlVrUTBMQTU3U0pZQlhnMytjWXhOcElOZmF3RlZMRmZiTFdXNUN0L0hi?= =?utf-8?B?alh0THJDNE00OHMzTzBxbHRqZ3l4Q2FtQURFa1o3U1FNMU54dExsQ2hqMmwx?= =?utf-8?B?dXpSVFVzY3lXSnAzNFNSSmJQUTlReGRQeGtkQUthMWpjekI3ZmVhVnlBR0pp?= =?utf-8?B?bERCY1ZxUTBQcHBxN1pyNllPRUNVTVNpNk9LdUQyZzNIR1lmOUZCZDFJQnVz?= =?utf-8?B?NGpva3Awc1pSbksvN2NTUVhtVnlxR05yaUxudWN1eFpjQ1lDSXVGdWRsTjlJ?= =?utf-8?B?VkI3QUM1cHEzV1pxSW54U2d4Tk5zYzZFcWlRWFlMNitwT0R5Mncrd2FiRytv?= =?utf-8?B?bE5DQk1idzNFQkFjMEhNMGR5OU14bTdsUWw5TGhPc0VTT1FxWFpGVUwxVkt4?= =?utf-8?B?dm5xaGJJSWllWVFqQTN5cStleDc1dGdUcXY2QzNXTTNEZno1VkxxckZlNkwv?= =?utf-8?B?QlpqNzNVWjQ3VFlTZDl5WG5zZXZiaWtKWXNOMWZiSHhaMlF3aitQcW1qd0Rw?= =?utf-8?B?T1pCekE2NTJSYlZNZWZrUmxYUklwRFZUbzJOWXZUbURndUxJRUQrbHQybXZx?= =?utf-8?B?RC8vV2xOM05jMTU1bEJ5aDRORW1iYzFTdVA3S3J0TVNHbWF4SGxTN1NUb0xN?= =?utf-8?B?ZWdmUlJtVks3ZFR5d2h0WHM4eDJyaGpZWXB4dUhCQ2ZwWk56NnJ4ZW5jMTQx?= =?utf-8?B?QmUvSUxleGdmdnU2SUt6ZWljMVZ0b09GMStwU1ZzdXNFY3NCRXoxazVESTcv?= =?utf-8?B?N09GcnI4aU4xajQwY3ZpOUh2aEFnd1FCUWVCTG5sZUpvVDlTRnJwR3JWK3pX?= =?utf-8?B?ZmFXVTZJQjZSQ1J3L2lneXpldWVROTQ5ekdJSUlRcmpFNGtMd1ZGK3Z6TWo2?= =?utf-8?B?Si9Cay8zOWpDY243Y1lKZVVYOFVDZnc3cDRCQ1laQ3M5YkM5YXgzekNYelVO?= =?utf-8?Q?lg8hnKRsjRGbC090aY1Oz4vUZtwdPFq22uEHs=3D?= X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB2144; 6:YCQ8uEaVT0I3/tiElRhfjJW5eTZtFt4qy3LJt+QWISfTtsite8g08On+GR1L1V2JNSjNm/6AnSVesrCcRukxvTgm8S/cjkvsEN9Wny/jmpcZd4M3eGkzaPYi71V/RPmwES+JA1lqelVmg9zGA1qNat19FYTs2XJTDgVeu01TvlPdyFV6EoqwGBhFIB18ffRmc/5d8qy2fdwdfmfc3FZQNtnBDukfsMJxxukT8BjEJwVP+PvioanwnuTL3UAHeGPiYj54S2EeCZIyDHiHftStb4WfDh/aNhO4D2gJDPBc2SSNuSq294vd8lN/V5x0vGqYqeJ0WkTPWFb5h3NX9UtNISO9/PVWvryDe0Y7y48JSZk=; 5:G3cAq81ka7OrRn/99FIhiEWj1zWGCkh5RgvWAS3LiQxLKP4jyDuQLHz3I7I8gacpCqpyX4A6fCDbvUo2O99eRVrrGB+aOmHm0YDpq4eeKWL4QGdEQhKNKWOL3DlpIiJTE+qb4fR4qclcnYFmXjqT1ceo0DOCUlNIB9UTbhBmyXg=; 24:cIfTAADfq9ruBE3Nm5tkuj5BgkHn5RGIfbIVeIUCagG+ufGiuy/iz/GGKUd/vJ2AwiuIauZNtZzhMjVuU5cZkEOt+IHGqIz8A6DDdMF9wxA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB2144; 7:cOTdIgmjH4uyXHoIdQVTrlFqgkF34dILqvVTlAvvgAZ4IggFgeLPOI1J7PlCd5K4ZpduyZExTkrdgFoeX2aMJjYuYLIGdqr9D493vjy95J4tLF+SktQTv+3XpmJTfpsA0A5LdWbVzq6DDE8zcGA+UUSDpAFdE2nYrldEzn5SYKQmfw4cwTZohoOUkKk29gjNAk5TZu40Bj5LRnuKWirpDjESJbPTTG+9WC1fuEIx8lw9twLBshCegU5SNByCKLRfka099xPqtDSB11KGVvCcuiWW31rEnzWXJdSy14Kr5u6VX+A5pItAOrypEUHQ+Ug4zEE8wGbWbC6OQ/MchVAEwA==; 20:/PE4jVux8o+H98GrlaJ9ZGflF0UvF1NlRi6O/mQjyHp3SCRUFjiOqX2HMfaBBhBqZcuHoZhxzNbGWq5+Q3KujaatUTDSdl6pDUT+SbOpeLPqoNmSHIucXCHJH01dITzOoI4gK5WasVSXlBlDVMc3OiOOSsjCuZDzXWeKfSt0tcpku8X9/bL9TmqP1me29rLa6OMObcehYgJWJ39iChv/nPrfTAmeqHuH9JALzeD3ZXvhFotjrzuwFsS1jaoq/DxD X-OriginatorOrg: sandisk.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2016 00:02:52.3287 (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: SN1PR02MB2144 Sender: linux-rdma-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-rdma@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. 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(). Untested. Signed-off-by: Bart Van Assche Cc: Keith Busch Cc: Christoph Hellwig Cc: Sagi Grimberg --- drivers/nvme/host/core.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c index 4669c05..d791fba 100644 --- a/drivers/nvme/host/core.c +++ b/drivers/nvme/host/core.c @@ -205,7 +205,7 @@ void nvme_requeue_req(struct request *req) blk_mq_requeue_request(req); spin_lock_irqsave(req->q->queue_lock, flags); - if (!blk_queue_stopped(req->q)) + if (!blk_mq_queue_stopped(req->q)) blk_mq_kick_requeue_list(req->q); spin_unlock_irqrestore(req->q->queue_lock, flags); } @@ -2080,10 +2080,6 @@ void nvme_stop_queues(struct nvme_ctrl *ctrl) 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); - blk_mq_cancel_requeue_work(ns->queue); blk_mq_stop_hw_queues(ns->queue); } @@ -2097,7 +2093,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); }