Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934727AbcLUL7m (ORCPT ); Wed, 21 Dec 2016 06:59:42 -0500 Received: from mail-by2nam01on0080.outbound.protection.outlook.com ([104.47.34.80]:38604 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751292AbcLUL7h (ORCPT ); Wed, 21 Dec 2016 06:59:37 -0500 Authentication-Results: spf=pass (sender IP is 74.221.232.54) 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; X-AuditID: ac1c2133-b8fff70000000ec6-81-585ae9ca0622 From: Bart Van Assche To: "linux-kernel@vger.kernel.org" , "linux-block@vger.kernel.org" , "axboe@fb.com" , "axboe@kernel.dk" CC: "osandov@fb.com" , "paolo.valente@linaro.org" Subject: Re: [PATCH 7/8] mq-deadline: add blk-mq adaptation of the deadline IO scheduler Thread-Topic: [PATCH 7/8] mq-deadline: add blk-mq adaptation of the deadline IO scheduler Thread-Index: AQHSW4GuUzOp6AqX102v967+v9Fnxw== Date: Wed, 21 Dec 2016 11:59:28 +0000 Message-ID: <1482321550.2644.10.camel@sandisk.com> References: <1481933536-12844-1-git-send-email-axboe@fb.com> <1481933536-12844-8-git-send-email-axboe@fb.com> In-Reply-To: <1481933536-12844-8-git-send-email-axboe@fb.com> Accept-Language: nl-NL, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [172.28.1.254] Content-Type: text/plain; charset="utf-8" Content-ID: <66AD6EBA86AC48479C3407A9EF4F44E7@sandisk.com> MIME-Version: 1.0 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrHIsWRmVeSWpSXmKPExsWyRobxn+65l1ERBhP+iFr833OMzWL13X42 i723tC0u75rDZnH43lUWi1d/9jI5sHlMbH7H7nH5bKnHnWt72Dw+b5ILYInisklJzcksSy3S t0vgylh9SalgB3/FuinHWRoYW/i7GDk5JARMJA429TB1MXJxCAksYZLYfaWXBcK5xCjx5/RE RpAqNgEjidkT9oAlRASOMUrM2/CCDSTBLBAnsfDrDWYQW1ggSuLnlgdMILaIQLTErd9H2SBs PYnXy6+B1bAIqEocfNPOCmLzAg29dWsqmC0kUCBx8OhOsGWcArYSjSv2A9VzcDAKyEq0vOaG WCUucevJfCaIqwUkluw5zwxhi0q8fPyPFcJWkPi84h8bSCuzgKbE+l36EK1WEn+mf4W6WFFi SvdDdogLBCVOznzCMoFRbBaSDbMQumch6Z6FpHsWku4FjKyrGMWKE5OLc9NTCwxN9IoT81Iy i7P1kvNzNzGCY1HReAfjvw3uhxgFOBiVeHhnbI2MEGJNLCuuzD3EKMHBrCTC+zQrKkKINyWx siq1KD++qDQntfgQozQHi5I4r/yB3aFCAumJJanZqakFqUUwWSYOTqkGxpwDyt+nRRgce3zp Sx7bd/ceVm7WuoiNlV+eXas+8Pfvwkm3b+VZ8PwsYek4sDXP+Vjn4d4v9dzWNt1zPCt0T//t nuh8qLb2clL165cBMY5qJekt6xrvSjRK3S4Us3oq7Z+TeXvp3orb/z34bJe/mn3mK9Pa9svV BuoT1+RPYrJQm7rM6hVDvBJLcUaioRZzUXEiAFQfgqXBAgAA X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:74.221.232.54;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(7916002)(39450400003)(39840400002)(39860400002)(39850400002)(39410400002)(2980300002)(438002)(24454002)(189002)(377454003)(199003)(6116002)(92566002)(2900100001)(3846002)(102836003)(106116001)(68736007)(106466001)(4326007)(2906002)(2270400002)(50466002)(2201001)(2501003)(36756003)(47776003)(86362001)(81156014)(229853002)(2950100002)(69596002)(5660300001)(50986999)(23676002)(8676002)(38730400001)(81166006)(189998001)(8936002)(33646002)(5001770100001)(7736002)(305945005)(97736004)(103116003)(626004)(76176999)(54356999)(356003)(7099028);DIR:OUT;SFP:1101;SCL:1;SRVR:BN3PR0201MB0979;H:sacsmgep14.sandisk.com;FPR:;SPF:Pass;PTR:InfoDomainNonexistent;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BY2FFO11FD037;1:GfF5lLVp2wamh+GXhNuYIvrI2+J4TfIBOM8qaKPtta9RH6hUwEYJZb9dCrh3OWMrBPV38H8o77O8IY6b8RCf04ilAkxlfiOujOS7b9Mb30umDy3D+2RukdSDSwCEB8XN/aZo17exw8wP3YviX+1a6PGuo0gqczZp0GVCGQy6KZaxbvrQaauWq9bqxqWpqpVPixK4laNynqsjTdJjvmm15DJHn/iVVkXWxYnz/WsLwVAdQZFjSt1A1SNLMq6R/Ez3/zi/vhgq2OFAc4Ls6WWiR5UHiZkzMlCemDNc3c2gKUFXczBEsRY+tBq4ib7Ewd2zhEQULbc6Y8Fovev1k03bK6GjBpyFwx+buZCN8SClGkbsAXFrgBBFLoSgJhyhpf6p8+6WDCgN7S9TLWMsnWR0/ojsJMsqcPQ79ASzm222L90f+FQSZWCuZT4TQbF934JWOKAX1ydFAdfBqBCsVNttur1cS+xNSgoKFk22n60MqrbK0gZq18rkPII+4gKdzbZeIReh5JPQAPMAFiixdlDH+ve+LwHt2ZdnnY2JnhAC7t0= X-MS-Office365-Filtering-Correlation-Id: 37a2452f-edb4-4f70-e887-08d42998d48f X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(8251501002);SRVR:BN3PR0201MB0979; X-Microsoft-Exchange-Diagnostics: 1;BN3PR0201MB0979;3:dtXd87kPctXnJ1ZGhAxNlHvB4/wjfPFijl+8s8XbelRvhXhsQXApjBlZDc/vBc+G2lZRbzDhj+1kWqzANyPsRJKlHyWvfRph+cYQ9gOxD7NNAyZbTaUSPMyUYuhXE/QvKzSRB9PfkVPIuz4PAh2AzHOQ3PTsNQc3/oItN836DBOZDLe2Uxs/rJySfld77VfHVuizbSToiJuIXk37BT4rOtKydQZR7405hyiROiZ/eppWdore9+qQSZsZLtSZRIXojGN9RRCg/yoMzR6Q/AToZr7FSxwYsanLCVY5bDLI6F2F44W8C37IG+Yoi1GLyuuXmMIqxpf+kXCXTWEw9l2UaFqNeDyjJreqxdSUV/2agw0yh8bD+pGICPyLXraJLTnexa7/zde7IdivuXGsbwhxWA== X-Microsoft-Exchange-Diagnostics: 1;BN3PR0201MB0979;25:4/9D5MMH7EM2n2DlaypGeaVUcP8w/64Stb1wHEMwDpOXx7Rlbv+htS0bSR/n93lxHrZO02wIDSfk0UmCFrkTtxg4HeHl6ijsnMHUPge1cxze0r/dhQpwk3BlVx5rpg1HELjEG17ITCQ6Il1xBriRHU6CTsd83Z9NJ/r6k3lsgwsMtHCv1Su9L9x/mvk2+RW/Gym6jvm3oOT9t2OodndUypAWZpaZqLptSsGPGIcCcxkUpgu0MhZ54pQ+54mkQw0zjqO6xw1K2nPWGGhWsRm3fbPSiIG5mTGSAOK+Ikis7YOjd1Oud4JZv+e8lSxshjdnXct7VF9SoY9EqWqhrO3Quc2YmkCeYb2/xdrCKPFFiRb+ZTaBksvtv25I76uE8htriNTwS5LpG+xjORLoJLa3bGAATYLL/dscwukBBMAjed8WwADKMMIOJMEBiCb2SbZB0pbCTsXwPQ6r1FuhhXmKi0IITddIYqWnTbHWcmGFiEj9sntwpbcn0ZIozUqJokM2SHHqt1rCN6K5Ug7tz7f2jpEZCuKPtcHs8WL0Seoe8X/4e7jUzp4l0qx0k0IRQt+9QpG669LVZTg5WZCs8cqHh6L7VISHO6tAaV/Nupz0rAtnzaVlR7XaBmrdvwBlq/ESkRXx3C8wnu2+DtIzPEN9JniU7DSCgdsbsRggRC9n9+A0zqi68cy83uJF0P3MN4KRvTCcRTZjVdRwy0TV17e0o3988fI1Br2wteIAZykFCVv7hghUDPMfrN/LyuCqy2JOuCPDDycUsMIwaMI1bMlYUAwRbhh1GsqIPDg2hU13FhaBHfE66cJCfLGbWPIJRFtY X-Microsoft-Exchange-Diagnostics: 1;BN3PR0201MB0979;31:46yI360HTV3w+QpbLJkrgVe+JxTS8jLUWemPijps9a2haZ1IfDXY3tYmo5PjQVnu6JxuUQ9r/L1ppLOj2Vo4/ajvVSoprpNBRHRcblM21fFzSbv7QTin5pEV9CV38CgiC2cujT2mkpv1Ypi0NzySPcbkGkfKN35ZwPWKoo/Kdy675sh0Gyif1p5/MZHPIN3+JT9rYRJ3yuhjczMRp+BRq8TkO80bHyNwdI2n1qUaNEJmVe29EFAMZoT0W3IdggIUzkli7Yj+YoAtjN3eTGegzBcSTLoCTfAQ+E+GJCNFcN0=;20:aJov90UQwLGYORh00xtjD89HX0WQ7wrmt3eWbZ66sK1f1kg3TVoYII+tLhWxwEDpsP76SSmd8J3K7RDz0vw+apy8X07aFHiHNte68Tf/72zTO0q3DBsSRuwJ/fvh3QQvqTzujixDtHB5lGo+XJ60DhaO2bfeRcJ7JZHxwvR0RMhEyGJvJ3jZqkFltKwHj6HQfvNm2LZfKRZVTGGZqkVPawQRMA6JCMQQhp6CW2hkMxTvVlD4IiTVJ7hRH+lFVMOJv6rhoHpf1C+zQYzzlmfOU7ZF+lwmvalh4JtFItxqtD3an3Bh9WXvtumHDY57kzXeLFMYKtxIHdBAi9/fY6v8OxgVJ9dhp6y/m9ZZraHMj5fPo9mbEz91IaKirVFR+6DbQR5z0omdgP6FaSDenwTwMmOIAnHu3wq/ZiSOJVWb0JClC2W5Qx2tw2NAC4NSEh5/QPIpHzmp2hM+kr9ZhbGHgrn+Yb/tNUEAtqT2JX0cdsokLwSW55NLyZZUdp9nYYqt X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(13023025)(13024025)(13015025)(13017025)(13018025)(10201501046)(3002001)(6055026)(6041248)(20161123555025)(20161123560025)(20161123562025)(20161123564025)(6072148);SRVR:BN3PR0201MB0979;BCL:0;PCL:0;RULEID:;SRVR:BN3PR0201MB0979; X-Microsoft-Exchange-Diagnostics: 1;BN3PR0201MB0979;4:I/DrieC5Wb/WyKEm427/bdONVP0G8/dfWrp3C8ydSfSGoa2tfLcVwM4F1EGOF0hPUE8AZg1aHQv0H8qZURGA0pq5iZOM5zB6/bVlY7r8o5PyJZbTDUGW3grOY3J/6IbWOzPblihJUdAu3Duq6SS5ftZQFbEmUh8LVDKSx7OG9dvoVHzArunIWktP2zisQ+ilhmivb6P5UAf80YQjaPLB5QkwZ75jvYW3i/fGjr9CpeF97lNCnk4yFSpIOSzMOfgcI9SiqUJLYRckhnrUc1HW2f+uCtGLhKU2ajbrcJ954fT0aeIdf0bAtjkWtHjtS2FGi2kfn9RJyZftZoGxAGB/1VO97sX3JXQ/XK6tDBi0aEgY765H4YaGOeaQ7w9ZgWH1fI5ndrXzz2Q7wkPAW1Pz8PGCcNTcHmqB4JhL/zW06cj0FbkCEdw07wPWg3HlmXLYuCWFh1pTA72Bj11dDv1w7ESjNnHQEyIDWQQkz6nrAb+d4wZTMWNEudEiSp+eOg6RK/CozPKoM6oheGnmlLi6m3c5nS24qmCWT302JCX65nmTG5P3V2ShB7KHp87pyKT/fTykcXa7Iom0AxASa36sHZbe5HCKYK0zRh02mq+v+nMOOIJ0NdNvh3nvbQsHDlriWZeccI7ZXaIYJ1WSYnUbHwT9DuV0IlwGwtZKZwdNzsE= X-Forefront-PRVS: 01630974C0 X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCTjNQUjAyMDFNQjA5Nzk7MjM6ODBEM1J6djRFQ2s5eUg5ZFJMRXNBRWls?= =?utf-8?B?Y0NPcXBUMFRQZWFQU3ZkbG03MVlqdFJsLzM4K2gzUkFUKzVZOWNpdGlnQitG?= =?utf-8?B?TVIzTE85R2pQNUhrSFZheXoyTHlETmhIWlZTL25ZTTkyajF2TlE5dUVpZ01F?= =?utf-8?B?TWpRWmpGTGlQd3JLdlJ3eXpEd1NrMDNRblgxeVVpRFJHRERwemVzUGM5UVhV?= =?utf-8?B?L3FFMjdkVnd3dUxhSzJkRXg5cHYvRzEyS1gvbXU0VVlJbnBxRk9NdDdieU1i?= =?utf-8?B?cjhIWFFnVnVFcUVVaEl2V0UvRHdmUUc4UW4zY0FPaEZaNmJJdXdmY1A4V2VK?= =?utf-8?B?eDFCSjFNMTF5RlcrU1hGcXdGdDRUbVU5ME9yMjYvc2t4TXV4NkJlYWd6REQw?= =?utf-8?B?dEplVjZUT2NwMVNsOXFoRnRrdUtZZjhhZ09FMU9OS1MyblRxQWtrOEt3Z3Z1?= =?utf-8?B?WHl5RFpRMTJnZ0xvb05MMDdiTlBpMnREUVdtaWNzcUJDTnNhdWlRQUZpQ3pk?= =?utf-8?B?RHJmVWVQNjNTWVdFTGkxbzJOdzhQbytYTmtoejdRNkxVYUhOYmxQRHNlQVpV?= =?utf-8?B?QnpJQURBTWNXNWV3bm5OSWpOUVBkYlJVYWMzVGFjc2wzTFYxTGZFaUFiclVK?= =?utf-8?B?ZUlmekMrc3U3T3RLakdWM0ZEaFZpY2VKaWJ4bUZRemRkNXRzUnlVVS9DZlBE?= =?utf-8?B?RjZlV3cwOW1KWFIxQ0lDUVlMMStjSVJZQzRuNUJJcXFSRzFkeVZBWFVqaTRR?= =?utf-8?B?YngzS1RnS3lqS0dIT3o2UHNycHJoVWRaR1RhYnA1bTk0S1JmQTZkTXBwNzVK?= =?utf-8?B?V3FCZ2poeTFMU3J1ak5tcDBLcnloUTVQNE5yRmVBeXZXKzZZdHNpMUI3RmdS?= =?utf-8?B?cHNwdyttZUQ2N0JQbG1tajZXbi8xOGE5RFJuOGFIeU52aVVnWnhYZGU5TjVG?= =?utf-8?B?YVJ4S2VMbEhsMFJZb0dtNFNPaG5KYU4yYXJsZk9TckJIajdPaHcrUGRxRDZs?= =?utf-8?B?VkdtTUtFcTJsUTM2RUJZeWsxamVlTW82bEhYbGhOUHltUzR1NG9YTjU4NTFR?= =?utf-8?B?SzRiMWF4V3V5WjNGL013dU1XY1JBRm5TV00vZXFzQXVyL2RLRzNzcGpubjFj?= =?utf-8?B?YWlxZHVZREV6L0JNb3Axb0tLZWxrcEZkK0pQdXpTRTU0bTJRcDNzUGpHeXR5?= =?utf-8?B?UnQ2L2s0aHRNRXJJY2R4Y2p4WXVkV3JweFlqd2Z4QTUvYkJra3JwTFE3bHpy?= =?utf-8?B?VEZFNmZyNEE4a2NHS1cwdUFVUmFEY3VPZ3hZN1pEY3drdkJic0NnV3pPSk9t?= =?utf-8?B?UWpra1VoYXhObnh6TDBkMy9aNHhXQ2JlN0F2U2xnN1NBckhDb2JVWE9Hc0Ft?= =?utf-8?B?WGl0aVA3RUo2TXAreU16dWhhaEYyM3Ixazk2R2ZRNVlKVE9GdExOM2tvVjBm?= =?utf-8?B?RHVabTJCNU5TMC9XVVRFb1lYTXQ3NTFoUmY5Vkl6WnBzK05iVmFuV2czMmo4?= =?utf-8?B?a0dHTnhQYUVTR05wRVQ0aHJpdTdpdjNZdTNja3orVGdkbzdKdFFlNEErSTZJ?= =?utf-8?B?WnR3VzBOZko5bEFweDE5ZlVXRE8zQS9odUp0YmhieGlNbHpJWkFYb29MaDgx?= =?utf-8?B?c0NwdXpPYUQrak5hVU4rV3Z6NU5RRnpHSWVGUWVwWENvWEZmRU9EYkZIdW9Z?= =?utf-8?B?WXYzck9vb205SG4xdm9GM1hSWXpvUVlnaFJrcWRFNHB1SkIzaVE2UzN1SjYz?= =?utf-8?B?Y2I0WERJNEVRZFJVcnJaaVd3PT0=?= X-Microsoft-Exchange-Diagnostics: 1;BN3PR0201MB0979;6:63Wnu3lrJSyIg4RKU+zifa+RainsG13sxpiHmL6w3fI64JhHPSsxieusQjgkJ02l2tKLHOOE5tuQeCADJ51ydvqhrTs7kU1PHXv32sLvRM7Wq3443+lBPSWxXx0dD1S+QB1S/jOkoOcC7JoynI/5wsPJArO+Mb4EuePVdYp/B/EAoEg+YJRiSxImmTkL/ng/mAqdR7CZj0yDQZMUzNXHQAtt09bNJqY+IWp6D+gtfSBGuMDMwxHTJQvICgliGfcUz/MMBhg2niJr99Sdlp1FrOtb08EyLInfeISum7HNM4rfk90wpTEv7zilNxhIlHxbwLmu5TaEaz+Qd0S/qFIDOLR3FJT5LEsYPC+QCHzuBkZiWJoT6FIX7XRs/+a9acTM5OqZRpukjKsg+PQZ4xwIAIc5XNyJuDjLJH0bI9nXKbM7yTHmEzXcMgwxtToF0VHZ;5:id8CSFw3aCvyo1OelvhcT4dsQ+p/SzvZQ1Ss3Z1fqJ36jDlkaZc+WRM6dHh2Im0N0QH4yvXLWXtAefxtybMAPZOs7XUBc9LNor1/uHZAPFoLmrey7ShDJDKg+7Y8JearhzNVhrnWMxDN83fWuGB7VQ==;24:yqExEFt0/AdUWB7WnuhmR6ljI39+prT1y+yrUlqDFDW4rpXi7Y3RTYay3rzpwx2Ev8AZSbkj+5k2giQoCiWB888ksqfcon/ekCfvdt0sUEI= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BN3PR0201MB0979;7:EeEvf+2WN0UGNWLtz6t0CkI96+uIhp2z0Nc16IJa+IBR47go3/x8PEO0JIL41HOwU8VYq7xge5ZlN0pNz9TRUOt8SQLet4TOFb9JOMLG6UVOsLiq2OtOSMJm9Zm+kL35dv1nU66s7WlIlBeUQ/j4qH+ffBi++bBPMCBpt930dvban6Dok1rYDOCp35pk3O5+nPCY61+7MZt233trrbVM4K6EpJ7jWMgsh5vMph4YIzwriwrhbufSoUnH3sXm1SH3lWzro/DUfTVxSLcFrm9I7iwSwbNVRZlKPE+LMII6P+pWARb5K4BHAGiZtHJ9Ir6yr3vj5gdOmICqMcuCQ6GMUbG9RvlZQ2Zro2QR4d1X/Yquh5vDrrsVZqlqszeFtnbx16UC6L6Fe9FSj1hYyYWIZXC449Iyg4pZRYYzASLD1JZEIO8z18E39Wx9AEQx+dtMDoi0rOk3C2qvCM7xY4crng==;20:ntQBj5rmu97g5FefiLLe1rnGB+I2+XtWGrPdXcd3wZfUmV5xcz/mlm35yjRc+bDkEU8TVDXLNkRc6gMLmyP4hOfXvH2KAvlb1+uadULPZ3cgKMtSQ6upxQjS0CZJ9Uh6lfMF+QzUiVSRA4o/yPOi9c2HdDqpzxY8hyfbWc5orHqliZ671bcS5AeCFpxiWrFzwuXk1exSkuUg5genc19xpARkFinOQCYJeUs7dgTr4tOM4qazNFNGXPDkGgGLqpLQ X-OriginatorOrg: sandisk.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Dec 2016 11:59:34.3271 (UTC) X-MS-Exchange-CrossTenant-Id: fcd9ea9c-ae8c-460c-ab3c-3db42d7ac64d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=fcd9ea9c-ae8c-460c-ab3c-3db42d7ac64d;Ip=[74.221.232.54];Helo=[sacsmgep14.sandisk.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0201MB0979 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by mail.home.local id uBLBxllc000384 Content-Length: 1395 Lines: 48 On 12/17/2016 01:12 AM, Jens Axboe wrote: > +static bool dd_put_request(struct request *rq) > +{ > + /* > +  * If it's a real request, we just have to free it. For a shadow > +  * request, we should only free it if we haven't started it. A > +  * started request is mapped to a real one, and the real one will > +  * free it. We can get here with request merges, since we then > +  * free the request before we start/issue it. > +  */ > + if (!blk_mq_sched_rq_is_shadow(rq)) > + return false; > + > + if (!(rq->rq_flags & RQF_STARTED)) { > + struct request_queue *q = rq->q; > + struct deadline_data *dd = q->elevator->elevator_data; > + > + /* > +  * IO completion would normally do this, but if we merge > +  * and free before we issue the request, drop both the > +  * tag and queue ref > +  */ > + blk_mq_sched_free_shadow_request(dd->tags, rq); > + blk_queue_exit(q); > + } > + > + return true; > +} Hello Jens, Since this patch is the first patch that introduces a call to blk_queue_exit() from a module other than the block layer core, shouldn't this patch export the blk_queue_exit() function? An attempt to build mq-deadline as a module resulted in the following: ERROR: "blk_queue_exit" [block/mq-deadline.ko] undefined! make[1]: *** [scripts/Makefile.modpost:91: __modpost] Error 1 make: *** [Makefile:1198: modules] Error 2 Execution failed: make all Bart.