From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751371AbcFIU3c (ORCPT ); Thu, 9 Jun 2016 16:29:32 -0400 Received: from mx0b-00082601.pphosted.com ([67.231.153.30]:10844 "EHLO mx0a-00082601.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750756AbcFIU3a (ORCPT ); Thu, 9 Jun 2016 16:29:30 -0400 Subject: Re: [PATCH] NVMe: Only release requested regions To: Johannes Thumshirn References: <1462886068-14605-1-git-send-email-jthumshirn@suse.de> <20160608071629.y2ysgc5lsvv2c6nu@c203.arch.suse.de> CC: , From: Jens Axboe Message-ID: <5759D186.2090000@fb.com> Date: Thu, 9 Jun 2016 14:28:54 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 MIME-Version: 1.0 In-Reply-To: <20160608071629.y2ysgc5lsvv2c6nu@c203.arch.suse.de> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [2620:10d:c090:180::1:92b4] X-ClientProxiedBy: BY2PR16CA0009.namprd16.prod.outlook.com (10.164.126.147) To SN1PR15MB0462.namprd15.prod.outlook.com (10.163.205.16) X-MS-Office365-Filtering-Correlation-Id: c0681880-24c7-4f15-8e10-08d390a4b0a5 X-Microsoft-Exchange-Diagnostics: 1;SN1PR15MB0462;2:u1qf6cUnZwvRAYrcD9wWW3MprpkxiuWTZvwo99VJQFVq+iOSv7F75MQBzlMSjUGEOohkxVCM9BBonATZ6q/FtknzrkDY2XitmbGYWaqkwUEQA00FCqSMya3HxI/UqDdFt5gMdURmowPGxWhF8lvXA2b2xa9tg0x4vFca0kGLrkgxdIRGO6kMUAjdAB1qoYAG;3:ClJG59bdRYpb8qUCeqLyD2ACVHliUJrEcGCQNLP8TrsxAeQeZKc3ReNFQwxbnixwQlhVUiXsSzngzKdW/RD6zBroh2MYSLp4+63JikM43Q0GOuLxWmFYg+TXXUguKAAE;25:Bd6VsIobxAulnXFdbfudUY04wnPQSIzzWoOBcKMMIVojCveQ0iAw+QF+3I4Npqul9U6VXjYVH4PzqmUdxa3KCDbjsYJDpz6P3AetzyHx4o1QnLinIq0urrgfYxMIrFTKTqE42Jr+dm9QEKAm/t8Yvrl5OmVmuE9SKylIAYAjrOuPjn3HX4dmHxOsxkt2C7mFz87QtBJh4G1RAWk2Dr2itiV0kZ/MWKmmE8tuRXPYjGpwpp4/7yLTTcJn7in3A3Sw6fNvFwze49S8FKH1OYHGGNITnsaahfBaWYFJBGVpyF5sf+HzN9KnkZ2D8JsQ9zC3HCtue7ksOHxysPextyf7agEWq+Oq6hVda5qHOaOD8lPddmRyRV5Xy1FtXRZX7s+23uy7n/Quwxq9mpCsrauvjkpJEyIgbOWMO6IJPDaaw4Q=;20:covVuzjpA4s2XY5eqknQuVkLVmcfQGnvORfRxLEXOoPSC5Yd7krV9aOgXCCqRyNRA8+iMiHItQmtrIvT2Q7k+/mpCI+Yl9K1I7Fdhstgbrt+HFGBgMR/bX6ENIj/ac/2Vriw7bcQXyUdBBk9nzO7n29WsUECXJIWtwUmGP934Zo= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:SN1PR15MB0462; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046);SRVR:SN1PR15MB0462;BCL:0;PCL:0;RULEID:;SRVR:SN1PR15MB0462; X-Microsoft-Exchange-Diagnostics: 1;SN1PR15MB0462;4:qIJTsFknAqJErQtaubYbjQ5ZMBIwbqTqUro5X6Zy8JhAh1RzM/MUGdoV06c9sTBoiYgtxWLY3FgDoKmvBrSW8+ICHpOV1CayXamvBUOkvnVHOZyg1AEI7n2YsPn2Zp86aJq7lmTdeJFgpek1dUBEQ3HhRUdUgHH4Ja+W1FV8iY95RtFylv09KPLqRuh5GktqBylmezDLj8fqESK7X+Lyj46H61RNeu7NkUxGHHWMVIg1cVYYKCF0jyPdv8S+Nrx9TTq8msq1SHxmF9W2OIrTlFXS8tncyNY9whNovb0h8Z5DhhClLncZibVU91ORPyvcAwtLx8lSGH7SmhhBtp+LKRIRItKZTxb3RQ/rzS8OQT89MQ9Uy01yQcJSfpx1Znvn X-Forefront-PRVS: 0968D37274 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(199003)(24454002)(377454003)(189002)(86362001)(189998001)(19580405001)(80316001)(19580395003)(92566002)(8676002)(33656002)(2950100001)(77096005)(83506001)(4001350100001)(2906002)(97736004)(81156014)(110136002)(36756003)(59896002)(106356001)(47776003)(5004730100002)(87266999)(76176999)(65816999)(81166006)(54356999)(65806001)(50986999)(5008740100001)(65956001)(101416001)(105586002)(42186005)(23746002)(230700001)(50466002)(586003)(4326007)(6116002)(68736007)(1706002)(64126003)(3826002);DIR:OUT;SFP:1102;SCL:1;SRVR:SN1PR15MB0462;H:[IPv6:2620:10d:c081:1103:5d02:635e:6e10:fe78];FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;CAT:NONE;LANG:en;CAT:NONE; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;SN1PR15MB0462;23:UADcXitFsieYQZTIJCFvaf37cxyja7/CaoPeN?= =?Windows-1252?Q?HyBXC20Ziml1Pm4LFfZGzFGMvuojxl/dVcJTgkztxfyDzjlTjBtFHKh4?= =?Windows-1252?Q?7AlmT186gzVkfwCSs/08ATnfBJ9Sr280D13ashxf4FEoqiBjgOF/QzWF?= =?Windows-1252?Q?10DtUxfAFYpWj60B0DKlBm0+6ZEusK5TVOyrjkIAFSEWX6AnIz7eIp04?= =?Windows-1252?Q?EuByERdh42A3dUp1dxAo+GKKooS8cx2Lq7/zm74IyFe5T9BYVHNPo2hU?= =?Windows-1252?Q?4mKIgr2HTQvsOyHQw/rESkIBhaJyPnfbrnr8gLgbJc0Ahpn+O84fXrsl?= =?Windows-1252?Q?F+k+8ZFk67Rb/yW1y9otA5GmfEdnl6kDSiq+BHROVIRuaybeV3qAbQ17?= =?Windows-1252?Q?3W/8mdIr5JkACtaiDtWBPiXN2AbxKFthrwiu58aVVBfMiWJfMRRmltYb?= =?Windows-1252?Q?RY/cNulbnL67uyesW43deI+ZaWid9Gw/5eyrwHhfXFJYLATeHtgdxOEz?= =?Windows-1252?Q?4BP/t+crx9boFBO5QgT4Nr5OxwL+mgFDQAI85MPuRfzdBpWwiyhl/RhL?= =?Windows-1252?Q?YmEC1jBha2rEAK2tmTIwoi/jobbwZv7p8ajAw9kleYp14rvD5keEEszi?= =?Windows-1252?Q?EP69etiLK73SuAh7I+ER5ME1U6rx0he2E9IK9CjQ1z+9xDrXAzijubfW?= =?Windows-1252?Q?3xX2VI14XcWGpFKs7rtwXt5zXSn/OslrmVgI5N5K4cSOXW87De9mZOEj?= =?Windows-1252?Q?qEAkP1bC0dAJBKoAs7Mp8JDW+lfZAramFjByr/9onccCX3L5/yEhn55q?= =?Windows-1252?Q?j0rGO7/iavKQH1npSV3YgNWPiZZ9HwDykMzKY0DQOZsSClT7dPsZT+5x?= =?Windows-1252?Q?EwkUzFfXzBr01LU9jLuGK4sgaCHbZuSLy7OZnIBfaJThA0s2QgF81Q4h?= =?Windows-1252?Q?iV0PaauuH4Fvmo6mlKu7NTYs9KVEWQ9RZMxbzXpUS2u5gnUp73ZjYTSL?= =?Windows-1252?Q?C9kuL7M5AayatRw7sbbTnuI4bKe4abPbABsxbpQ1aBt64NjyOMefe+nC?= =?Windows-1252?Q?U4RcuXCu+iWi+TliyUDAoHX9RpN9wpS0IKJOg4Qdlr4GKtvxzj/DRJdb?= =?Windows-1252?Q?CqDp3sOzuqcHZNMbl+vxErAVK56LjPE5nH2rP0bjemgZpOpMHeUHj93t?= =?Windows-1252?Q?O5+k2uY+0qXVkz9EKErOXeLt2FM4GspPG9V9uP4FQZw+mypwNw8+qdhn?= =?Windows-1252?Q?aTGLRMELEKOmR4XOUc/VHe/ds8hxP1oFGODT9OxD1zm2p5x///h1IBan?= =?Windows-1252?Q?HzDu1Mw4Gcqe+Pn/6E7NBuXncER5Rr03AXEPCwZcJwBP2s=3D?= X-Microsoft-Exchange-Diagnostics: 1;SN1PR15MB0462;6:8+X37N0wrmqFhabjh9+D8hzTt4PXdoiDRE2GpXidogqA3hKfJyx4ZI32yFgkR4leznD68t0+WGpO7dMSo8srxT+cA4ZleIrnvBT2Alr9RT2M+fq83Dgl0ELmrkDl5kW9oaOfCISwvkM/Mw1JZ0CPV8P7o8OL5X0KwR+Wr1kvFy+zYNDsWJrhQAa2nXQ9lQgF9YPv4AG66ND321Nyj+b/ZS1ghIecFC6z7sIAWB+bpSo09wcZgXnXk8ZQ03peqwvR5OtkTKpXxS2L8deYmj5mMmokAzM50ofqBbJAPFdMsto=;5:6NujiNuqPv1NluiARKEtsrqUq/Ik/b0Ufu/22wk4t9YxY6AmV97HskBzjiwR1Od+EosecMcXg2BMXFnPNhBX7BAN/tMBCGsoZLpf5lvU1qB/QX0UOblcm+19y3EDBNrMjrFIyH5IM8R24AZaTvfhHQ==;24:pO1ybdzq3KKFZyK2O1vCpzO+jGccADShgScEoNPund8s1T6YMPtEMxHaYVOZ0YHjTjH2dGb3fWKzzQcbpQB07zAHK060iRszCW7gBZdoofw=;7:tCJJLFzk2lKiIh8pHMlW6wasx2GCQFUT9I3XxLgnAFEBD1MWqycej3Yrkhx9lgK028j6vmOXbuZAqQ526PoQ77yf1kY3LzKK14MO8GmwiA7qZIPYLGMHdIOKGogGiRCnTqrub8j8dFIMt7wHA/Y5Vak2+mGMz+oPwDzw9AVbtB7QEQWO5k0mGhgw22MPntVtskKQpGFxbUsJ/Ojdw6nYMSfuOva3h558CM5kWtXkZlc= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;SN1PR15MB0462;20:a0z4Cc2Rq2Bo879r9njl5JIrLvYdWM5b9MO0Qh0tzaE8Gxs4Acf29OZvjjUcdOMBfiuIa4wwvTrpwmSY9pLW5Y9fDtvmfMaSNrIIUTKVJeSj1ScexsqwTm1nnkiff8cJdLUlxM2QBizNHEduM4n5wHJWESASk7HTgRo/KFZZVlU= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2016 20:28:59.6266 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR15MB0462 X-OriginatorOrg: fb.com X-Proofpoint-Spam-Reason: safe X-FB-Internal: Safe X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2016-06-09_07:,, signatures=0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 06/08/2016 01:16 AM, Johannes Thumshirn wrote: > On Tue, May 10, 2016 at 03:14:28PM +0200, Johannes Thumshirn wrote: >> The NVMe driver only requests the PCIe device's memory regions but releases >> all possible regions (including eventual I/O regions). This leads to a stale >> warning entry in dmesg about freeing non existent resources. >> >> Signed-off-by: Johannes Thumshirn >> --- >> drivers/nvme/host/pci.c | 9 +++++++-- >> 1 file changed, 7 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c >> index eec73fe..6f5ad07 100644 >> --- a/drivers/nvme/host/pci.c >> +++ b/drivers/nvme/host/pci.c >> @@ -1759,9 +1759,14 @@ static int nvme_pci_enable(struct nvme_dev *dev) >> >> static void nvme_dev_unmap(struct nvme_dev *dev) >> { >> + struct pci_dev *pdev = to_pci_dev(dev->dev); >> + int bars; >> + >> if (dev->bar) >> iounmap(dev->bar); >> - pci_release_regions(to_pci_dev(dev->dev)); >> + >> + bars = pci_select_bars(pdev, IORESOURCE_MEM); >> + pci_release_selected_regions(pdev, bars); >> } >> >> static void nvme_pci_disable(struct nvme_dev *dev) >> @@ -1998,7 +2003,7 @@ static int nvme_dev_map(struct nvme_dev *dev) >> >> return 0; >> release: >> - pci_release_regions(pdev); >> + pci_release_selected_regions(pdev, bars); >> return -ENODEV; >> } >> >> -- >> 1.8.5.6 >> > > > Jens, ping? Added for 4.7, thanks. -- Jens Axboe