Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932412AbcLOVob (ORCPT ); Thu, 15 Dec 2016 16:44:31 -0500 Received: from mx0b-00082601.pphosted.com ([67.231.153.30]:45130 "EHLO mx0a-00082601.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752340AbcLOVo3 (ORCPT ); Thu, 15 Dec 2016 16:44:29 -0500 Subject: Re: [PATCH 5/7] blk-mq-sched: add framework for MQ capable IO schedulers To: Omar Sandoval References: <1481779568-10642-1-git-send-email-axboe@fb.com> <1481779568-10642-6-git-send-email-axboe@fb.com> <20161215192940.GA29747@vader.dhcp.TheFacebook.com> CC: , , , , From: Jens Axboe Message-ID: <82dd217d-2631-131a-a006-8b80908bf0ee@fb.com> Date: Thu, 15 Dec 2016 14:44:17 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: <20161215192940.GA29747@vader.dhcp.TheFacebook.com> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [216.160.245.98] X-ClientProxiedBy: CY1PR1001CA0019.namprd10.prod.outlook.com (10.163.136.29) To DM5PR15MB1193.namprd15.prod.outlook.com (10.173.209.11) X-MS-Office365-Filtering-Correlation-Id: c5d96d7b-71e3-4d3b-d3da-08d4253387cc X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:DM5PR15MB1193; X-Microsoft-Exchange-Diagnostics: 1;DM5PR15MB1193;3:q6ufIChr16wILQ6Y9Z1PFC3w7eTJYbZ25hk58Ghm9DLMFx1m9luawLiG2DBn9ttTqGewjDnomcPF9Y2lJQ8SqEqu5a5AILWYKhEDBBh3unEUue06a81TxVo9Btoxgi4y+VxEbd3sTTlRn6vUjXVG7XPmarj/sNYs9jSp/zknLmrEibSmiYY0YtquVjO96nj3wreeVUuHfJsAybWTAXlOEIvQG8kFbnMrPi9C1ynEnsQp3PuUx7xF84BS3EVBcdgUFyPZhdCwrdCScjCOdbQ1Aw==;25:7HVjOa9AWFzOuUTo93mQ9KBkXB6mosk5Zmlf+dkLHPMvaiItEalhJA6z3RSv6UZtdHPZoMnbRX8bbYq+ye8IP7Y5rP/JITdmx7wSFjTmj1JtSmimYbi98Q9V/NDIXWVmTQPv5H/ORqKvy2weuRBr2u5MD0TZ38hEqNR5sEhTHU8gBpOqHrsgzb5bPlbFX2mYgtynyrx+sWuF9u1pWcgEJabqXlIz9p4VHczdrWdmFrUHewRERRasnu5LhHPWZIkC2w6rwvFrFQ2f5CuxYWweHoU05jt/hBIGBYEA1KEHY2Wm+EtgU9rJTslj8to4KgQvL3MPWzVHLqEmYVBJmv28GnUTzSDJCSUmJZga8W2No0jvli5/Wv6tK8dYBEerttKd3+XO/ZjhGWddJP7jieW0CA+2UD45YRTFUBjqnZyl67m4bOSpjuxT1ppC4tDgWKwrIHWBWGmc/vu1PqdJrQUrxw== X-Microsoft-Exchange-Diagnostics: 1;DM5PR15MB1193;31:KXQlSmjRTe/foWdjypJcOV3XNK0nDcoLqFNaeYVdQq6/OCm2A1l18MOniI4/SMXAfFtPZkQKzkX564X8ygTiXB1Sz9KbIvv4CWAMu9pq2MXLdE1jZ26kIbf4C4xmuiRoK0bR0AVRTmkkHeILDBhevcqCDf3b1Zl0cMURzarHVoclobRJJmnS9+j/cEWEc4Io4AeruSFjtbH/N+uIjskJeznLvl6h1iRH6ICyjCfHfuBv9e5BvNNLrBGkYDYnFFtC5H3uIf5FYGa//YPNslGr3x0vIV4tC73LCR9oWKHdnrc=;20:k7iKsbksJtPh158/+nAYBGLQRVOOn/3IwhGRsrgj9Uu8QRcimF//fXhfIPnYhk+sf1NgnaNWucRe1WfqlGBynpYR5SxuXqm4ozxCMxXWnMiJDwi1ezb2m3742dWGBu1yuF8NPy2tia/hAwgz8OY12UgMOW5s5v617+bdn+Lf7p02/2zPIXDcNhyQ2yb1REd1gRrAnmyDKCCeNRnVdJ4SPQ9f0oiQoO3cfXJ4+9V0Ab9jHawT5mmOSYU2qAf9Eg5cOWfHkbOI2jleG+o21MQY69WR15kPyeZIisXIUfj3fJfQmdC8yv7GmKwIJ32FP4aFR4Q9KbxYqtsQODKs6J+4O4cABNuEMu8SqjmcIB8Hpq7zCbhgvXUhf/R2KetwLbWRiTmwMGinKlnpGjH3mjOzN0+d8lKORBLF+o2J79uV+mfH7dun04giRThpCcUv/jnmD0GfgGmaZf1i+EGHl2spKciUDFM/JBYsHNU7Uub7neySAR3LX7IZU+L9S5TtVtoZ X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6041248)(20161123555025)(20161123560025)(20161123564025)(20161123562025)(6072148);SRVR:DM5PR15MB1193;BCL:0;PCL:0;RULEID:;SRVR:DM5PR15MB1193; X-Microsoft-Exchange-Diagnostics: 1;DM5PR15MB1193;4:NczonZVZZiYFutQprR/y89ui14WXP3drBQrxpr8/a2fuW95gwdXzilWeHOoVKL2ZJ4CCjr8zan3iQmKmZ006+ItV3rPVZIVVSIjMSXOmzNZph4Dj8GaWlA5gymz0D9m5ZVdveJe/AHGT3zQNz6y1RX3bk8avy2st38JRaSPlhBcjBod5hM7zXRTCjBkGfLaA/9bq/PTLWy/YSp7dY5yXg2kPZGKWumQmOuumwH4VMrOQ1UOlM5bq4V5OrWEQfRcGbvnbTacnPtl/CwxBVGtzTbyu6sT+k8JV/yUCFIwVCBlm0AWor8hLLUEIM85v3Ss9UhNh+0TbnNYQlrRjmOMj9lhRZfGLt2KLHBVdnlFX3fL0V0r6SS229WFlzI1ivfu2SYV0IXurUQ9A3m93jNOWxV104Ki3PZR7yddK/LOkTGunr1BT/xDWH9uiEbCXsrxZM8Z7BUUL2cQgwwwJcARPPNFUIG92T2qjBF2S4BfKaGMlAoNrzMwVU9xRMCL0xtfi39z+mi099s7lFQrU1Ozj/4OBP9VwO8SFeU35xslKbOpxWjpKGTRk3rYp8ypCO65A5eCs2mx56mdwApp2Cnm+KA== X-Forefront-PRVS: 0157DEB61B X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(6049001)(7916002)(39410400002)(39850400002)(39450400003)(39840400002)(189002)(24454002)(199003)(377454003)(2950100002)(6666003)(31686004)(83506001)(66066001)(305945005)(6916009)(3846002)(47776003)(50986999)(230700001)(68736007)(65826007)(65806001)(31696002)(25786008)(65956001)(33646002)(117156001)(81166006)(54356999)(8676002)(86362001)(230783001)(81156014)(64126003)(7736002)(5660300001)(105586002)(38730400001)(4001350100001)(36756003)(4326007)(189998001)(106356001)(6486002)(97736004)(92566002)(77096006)(6116002)(76176999)(23746002)(2906002)(90366009)(50466002)(110136003)(101416001)(42186005)(229853002);DIR:OUT;SFP:1102;SCL:1;SRVR:DM5PR15MB1193;H:[192.168.1.129];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;DM5PR15MB1193;23:r6Mo5etRqZydJ0Gv0350V+EreU9Ks1/O0g8j1?= =?Windows-1252?Q?LG7cpwlVYpQ8MbzanI5Mnfx/0oGcLiNccSgLOqiqJSXWuGdTnwbeROKV?= =?Windows-1252?Q?PJSiSewVLDQN9qTB5A+a3FhKju0hg06KpC66Cy7k0TfXe5LxIKfqVs8n?= =?Windows-1252?Q?Kck5mQAiWfcryJGGEC7sIPAd5am3ZdmdU71z7DQ8J3zBiqUPHL8fjL5o?= =?Windows-1252?Q?M94h2dNlgTsTg+Z4jF9V3my7zuwx2LJDbpkcJ+bAj5F/mTdjjP7SOS2t?= =?Windows-1252?Q?0pqwE4t7HlrE8mcGnpEjX4LA9h8ESJ/n+eupoxtqkxLI11ahEW4Q19UY?= =?Windows-1252?Q?Ja6vlK3HWP2fIc9a/MKscnUt/nzMuxLAkzwaQOkijBfXnc50fmf53cSI?= =?Windows-1252?Q?4SgCzTQyROAY0qbjpIoARrU23ZX3TEoMsAugszxVX7JoUOHIqJiA+lI5?= =?Windows-1252?Q?kO7R3mbIMY8em71oKn0+odBu7w0qcKxnKQP3EJ7DGnl59G1XZ2onij/1?= =?Windows-1252?Q?GpWenD+BhV93rxlVWwClbHoIfGHsA2hyhg6fvTp7c1XMjPdw/VQevnwm?= =?Windows-1252?Q?BqDP+/jgyvEbcfz+jtQA5KQCfwNolTFWKI2uXCLqFp2549SkvT3xvqq1?= =?Windows-1252?Q?RVosRbqKDbY/p/obHZaz6qA/PtIwVq+QiLFyIT2CnDH2UI8pxex3GbzW?= =?Windows-1252?Q?E8T7EG7DcPJeUYHIhioOdpKflq9GixyvuYlonp8QAZDEyrBCrNxgcVqK?= =?Windows-1252?Q?RSCjz4aUjjRALq4JxaxuDD+Ba/X5alK8q/0j3QZ2uDUZWO11TPZTl8g+?= =?Windows-1252?Q?DJE/jdk9YU+DJ0F526YfewUS3FiXDt3rFfcH0sC5Lv3sIUK6rIq1iwyT?= =?Windows-1252?Q?T+HgxfKtQTWc7KOyNiNK+1031efv7u89+ZKwEJheL0OK1/yXOW2/ZyLr?= =?Windows-1252?Q?5AjMUmWd4e0J+zqiee8Urn+IZba9WEnMQS8Xe2wDHKUIEl7hzaBfEJ4u?= =?Windows-1252?Q?K0GlqEgPd7u7OzAUC2NJ1vHr4cZJ8g+oVKdxe6TC6hkl1sbih5CoAaFv?= =?Windows-1252?Q?KhAKOIwVVbpAmbkHF1sLK3Twlvkk4KmKaQrzkR+hOzuq8E6exqzlZUou?= =?Windows-1252?Q?Mll8ZyjxzCKd89iFv6DgqdcGQN1zBdjl3X4sPuV1MGswPK7CnhezPQKI?= =?Windows-1252?Q?Y1hLrouJ9yYa0IyiZOiDvaexYMFgWBa7f4EI1EqYZfBg66FGdrH/Mi28?= =?Windows-1252?Q?SawAGOkwIs/KT1Fj87XqT6AAeENA924VrQ0YINsUOXsIe06IhwfyDB/k?= =?Windows-1252?Q?+OEsngGQJ4BtQHQxjyJzLXfD2HClYIRU1DurDCBf3VYvKl+C9oP6V5Cu?= =?Windows-1252?Q?N0h2mA3haH/Nz87ehBzMadGdTg8a/Kk4RxdT4BBLsTyrQ+z8jskZhNS0?= =?Windows-1252?Q?6C6aowTXkzkPc5qQ9e+v4zX95rhU6pmoP8RdCYGsZ+yQoDeOIA/cpG1j?= =?Windows-1252?Q?zrdm4xAe6Da6ZLQSKqXbH5A2OjPmSnKifssBPUhqfq148gdwk61fFAvZ?= =?Windows-1252?Q?/8LpflsofCTmYBmqDgmAwRWOXZUFDKLJxEx?= X-Microsoft-Exchange-Diagnostics: 1;DM5PR15MB1193;6:niuziiNdH29rI8rUtodl+jeZaPTavZvrkoESziacADtIqbjAxmN+laiXP9jOD46mj7DouC4ejPY+TFKeH3ROaKxve/4zAT8El0FFSlVX6+EYYmeY/ccfaz7ohGCvRWwUaFUw4HVoW7r9SuvoImSr0fFewYXkh4R75K3bdFoarCZ8llnd/GI1HPzm4nYcpbWl2AntgLmHQMZwaXuv1qNJSeO0Tc4E1WIvEiRFk/Q8MHHrasaxb/5oUuEdo0qkbZRebMfiynGwK3xyldqx1XqXaWf5hFXVF1O531TRK2baHBmHzTgUhWtdFInZjmfJVLaGJb1VO4dJZ1vFORvcvchBFBzBUIq1VVe8VZBkjYHX6MbyDgzJ8dPY3Hw3bZXGUawM5pkH8couCY40s1k3JfXIv26LM2twTXKKOFTpyn5K2M4=;5:FlMWO3DDagslZAlbDDMi5zA5MGWK2YcxhpjGhu2KOzZqF5iPbakY0DV9aW11pN4QRcW/rZ5rsxw/M86GpCWiYwth7gCpg2T/aV/72Q3czDkAMH6SH8GSAjb1s547v4q7IH3Su2WF+InVIlxl8JA4cJPAAH1cHlxpr4Kb0Ty8e4Y=;24:gSoA0DnJAmqxnQ8WrVEzWw4gWGLrWetY6h8uxmlFz9cQQO/XTs+gtsgzM4s20dA+jfC4OOA651mprkRxgWz3Ghc0qnmx1Ui0yqe0iwqh7SA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DM5PR15MB1193;7:7K7G77f/oRi+d/vAadIRcReKEN0bK1PKtaUKdQr+93A/T0WON+dm0qDElpeLnsllmyEsRxBSHRvt7MbYzAThvSQs6K5GTf4TLqmgkGkIw/yxHDtxJYGOEmIL21tGmVtaTI8S2JRR1hHDwLgQOFsvTJMgrlMskmbjFRJ0YgpEBDLhSrJXUcmzB9ZDWt0aaHUiThToUN6kPvvQQov6ywNAjRt4UkqHpt9CLYBsOP+VNi5eXzY6cwyeFmPBzX9Tlgxcuq4WE6vIqwKm+HoQfC42GKO6XA1rCM0CRm98fKsslzqijxF2OlP/ih4fMgNuaywgJB/+iS3t6Y6CfqzWg34+Ewzd35u2o9GOT6gYhBEZ34pOtdofrbLTydVZxUzBo/GC/i1IjkylA7VLd30CrX/Hq+HvonFJCo5U8cWZGRUr6JLtAz5AFUhJVyEhq5enswnoPDG6eTtvUlIvzYWhirilmQ==;20:7Uamui5IGag8cxdrFwcE3fTlp2kWqST+uZwowMeRSaQr4kWVxG4ijhlmgb7ES8FLSzB4RlnBqkrpteEX+URNKfQJkT5NZbkyTfECum3LaFAmZod59YDQHPVJ5fcuocRAGfS/jjWL/zdqOxoeDmw9lC/eBj90U1UTRVVx57ZSzQQ= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Dec 2016 21:44:21.1915 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR15MB1193 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-12-15_14:,, signatures=0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 882 Lines: 20 On 12/15/2016 12:29 PM, Omar Sandoval wrote: > Hey, Jens, a couple of minor nits below. > > One bigger note: adding the blk_mq_sched_*() helpers and keeping the > blk_mq_*() helpers that they replaced seems risky. For example, > blk_mq_free_request() is superseded by blk_mq_sched_put_request(), but > we kept blk_mq_free_request(). There are definitely some codepaths that > are still using blk_mq_free_request() that are now wrong > (__nvme_submit_user_cmd() is the most obvious one I saw). > > Can we get rid of the old, non-sched functions? Or maybe even make old > interface do the sched stuff instead of adding blk_mq_sched_*()? I fixed this up. blk_mq_free_request() is now what we still use as an exported interface, and that just calls blk_mq_sched_put_request(). The old (__)blk_mq_free_request() are now (__)blk_mq_finish_request() and internal only. -- Jens Axboe