From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932313AbcFOIur (ORCPT ); Wed, 15 Jun 2016 04:50:47 -0400 Received: from mail-bl2on0064.outbound.protection.outlook.com ([65.55.169.64]:19696 "EHLO na01-bl2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753314AbcFOIug (ORCPT ); Wed, 15 Jun 2016 04:50:36 -0400 Authentication-Results: spf=pass (sender IP is 63.163.107.225) smtp.mailfrom=sandisk.com; lists.infradead.org; dkim=none (message not signed) header.d=none;lists.infradead.org; dmarc=bestguesspass action=none header.from=sandisk.com; X-AuditID: ac160c71-d741198000000efe-cb-57611255cd29 Subject: Re: [PATCH 06/13] irq: add a helper spread an affinity mask for MSI/MSI-X vectors To: "Guilherme G. Piccoli" , Christoph Hellwig References: <1465934346-20648-1-git-send-email-hch@lst.de> <1465934346-20648-7-git-send-email-hch@lst.de> <57607D0E.1060907@linux.vnet.ibm.com> CC: , , , , , From: Bart Van Assche Message-ID: Date: Wed, 15 Jun 2016 10:35:21 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1 MIME-Version: 1.0 In-Reply-To: <57607D0E.1060907@linux.vnet.ibm.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFupikeLIzCtJLcpLzFFi42JZI8azSDdMKDHcYOoBNov/e46xWdx8cZDV YuXqo0wWe29pW1zeNYfNYv6yp+wWZ+cdZ7PYvGkqswOHx8Tmd+we786dY/d4cGgzi8fmJfUe u282sHl83iQXwBbFZZOSmpNZllqkb5fAlbH98TuWgi7Oiq0r57A3MM5n72Lk5JAQMJGYsPko SxcjF4eQwFwmibeHf7JDODsYJSbO72OCqVo38zQjRGIpo8SVg2eZQRLCAjESr1+3gdkiAlES V47chho1mVGi59wKsB3MAqsYJf4fLgax2QSMJL69n8kCYvMK2EmsWLScDcRmEVCV2LfyKZgt KhAh0ftrCVSNoMTJmU/AbE6g3lfb9gAt4wCaaS/xYGsZxHh5ie1v5zCD7JUQOMsqsWLuUrCr hQTUJU4umc80gVF4FpJRsxDaZyFpX8DIvIpRLDczpzg3PbXA0ESvODEvJbM4Wy85P3cTIySG Cncwvr7tfYhRgINRiYe3wDEhXIg1say4MvcQowQHs5IIbxlfYrgQb0piZVVqUX58UWlOavEh RmkOFiVx3ovRH8OEBNITS1KzU1MLUotgskwcnFINjJnV7ElHjVgdZeV97XQXlM9nUo/XvZFo 9+Hqxx2RETunsdUsPHzZ7P6O9a7H5xQ514rOE09wywzblTsjtzTg5mJjK46I5Bfu6++5Hs+4 1sp2PmWOdfxXl3PeQVJZx/QZpLxs/bee8NuhK7OGuZuvp2N6p8uSaAbzrkMBm/SXmD4PfDX1 zo+TSizFGYmGWsxFxYkAlZCXNZ0CAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmpkluLIzCtJLcpLzFFi42Lh2siRousnnBhucLqd1+L/nmNsFjdfHGS1 WLn6KJPF3lvaFpd3zWGzmL/sKbvF2XnH2Sw2b5rK7MDhMbH5HbvHu3Pn2D0eHNrM4rF5Sb3H 7psNbB6fN8kFsEVx2aSk5mSWpRbp2yVwZWx//I6loIuzYuvKOewNjPPZuxg5OSQETCTWzTzN 2MXIxSEksJhR4sjFmWwgCWGBGInXr9uYQWwRgSiJA7sXsUIUTWaU6Dm3AqybWWAeo8TpriIQ m03ASOLb+5ksIDavgJ3EikXLwQaxCKhK7Fv5FMwWFYiQ6P21BKpGUOLkzCdgNidQ76tte5gh ZtpK3Jm7G8qWl9j+dg7zBEa+WUhaZiEpm4WkbAEj8ypGsdzMnOLc9MwCQ0O94sS8lMzibL3k /NxNjOBA5ozcwfh0ovkhRiYOTqkGRpMfvxq2cMc/b2h75H/asOzS6v5pEisOXi1Id5Paevzv zYe8a98zLwhVqGdJ8rlQ2VZfuWO3zSl9vRcKmmUX/txJr7Vy21aXceuV7xNWi5834zPVPHbI zzRyfjChc06j1CslxznP3PgeGlswqO/SdJ1mc23O3jOcWbuu17lP79PjOfDCv+XrByWW4oxE Qy3mouJEAEER/s4UAgAA X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:63.163.107.225;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(7916002)(2980300002)(438002)(24454002)(189002)(377454003)(199003)(68736007)(65806001)(65956001)(50466002)(31686004)(54356999)(36756003)(83506001)(53416004)(356003)(586003)(8676002)(2950100001)(4001350100001)(33646002)(81156014)(81166006)(5001770100001)(97736004)(47776003)(189998001)(77096005)(106466001)(87936001)(92566002)(5003600100002)(11100500001)(23746002)(6806005)(86362001)(230700001)(2906002)(31696002)(2270400002)(69596002)(8936002)(64126003)(76176999)(50986999)(5008740100001)(4326007)(65826006);DIR:OUT;SFP:1101;SCL:1;SRVR:BL2PR02MB515;H:milsmgep14.sandisk.com;FPR:;SPF:Pass;PTR:InfoDomainNonexistent;MX:1;A:1;CAT:NONE;LANG:en;CAT:NONE; X-Microsoft-Exchange-Diagnostics: 1;BY2FFO11OLC006;1:Dbjemo83E/D9ymidlbD9cuyxbVd3RgRE+Ez5g/wRhXgYAWPlLCEN59ybkoIPC6/rMEzoVdZdW9imL+zxUU87g9VeN2FZFDy0QF8yMyq3ibl8CslfcSEoQk2n3GD3hZAIGzWG42Os1M8e5uw3LPTQ/DbnkT6y59Avv+16YWa1Q6Ev4pkLsOLWyuKmQW/TttuxmDssKCSSwofWTHZ82Z0xXk6CQPlmfjzX+8I1bBwqzUdm1CJVST27Z2/JPyh6KRQApeGOQq9vo5y1xSMSy4f0zT6KaZ8H3IUBfS6jBzdShogU3/fDt19CM5FV4ZDFTGZoEgBFZHNNundReedtEtYsUH7vSU4wPM0jouL19+UBYDsVtcjJ3guuZMOWhNk4/oG+Svz+44YtVr2reT6Be/9K+IdC5V/u7OTHZjGY0I4w/GIJm5PHHpXbMWyfsPKFEzDNwGXlg5koWpl5yN5txP7dmQ== X-MS-Office365-Filtering-Correlation-Id: 84df4f77-6333-49df-5aa9-08d394f800c8 X-Microsoft-Exchange-Diagnostics: 1;BL2PR02MB515;2:BIN2mktGLT+FZ9wIrAAyRYAQ8//VwMofiGMDlAsjOsjVoSl9gzgtoVZzN1ULCNplf5GTek3Ut9iEeq94/1J92uKAvxDgffP2hM/f0iMJhsIsRvA1s/MOkV3pxj42GNxTw1ZOHvZ9B5+9gpbu7qEkIxWtEvei4jLRtUsv5kD7sO5GA6V00JgWO05HF3Z3nKXd;3:0wpCdTKHboKoyMg+7rSxPqECdXkCTWnHuikzHn3CS2hJn1E/rq5fkITB3/CCFjJVU1ZQ+Ls+nCqjydBqTDvtB7beR7L26rSDu6XiqnHaHcfi8zRARbYTc/nS60J9EHIZzfjXj9ohQAlBQveHcqrl8q9jY6lwC78dBiuCzt8QJZh8m2NS2TmOVH/D8zYXf0lQxcfVr6wNXdTCt+P2ydvThPXYPxzuY8APAFTjaoYgQk979Iw3Ys4GWPfIqG0WhIjnw0QVnzjv0nPXecmUhqB86g==;25:c0FJTWaFD99f3BRFgtNUMfAOuhvAPDr4MIcY/ep/awWVhQYA25HJypUgrtKAW2jKkZPY2Z6OPt0qnqPoMSTYLaQDbmONFxxCCy/h28wCf3O7CGmnBTSqJHO/37KX8oWNu4jF3HbSiyKujdVvjLxtHyRRe/OPHfqBKejrFe0gKR8Ba9flzPVLVhnO1mXQlcOizVYT3BPo2JEt5a73qg2kgGlixK+p4n8dds3Yi3RNRicgUmwtmYfr1rUQCgdUbulb2mjIxNp6IMZSrtcLnUb6qAp6nFL3fvJIkTRix7d+T+K1uzQmaYiwGijCAhuipNtVScV+7L9+1KpHCxW1dW6ptb8LlpursHFJ1yGohK509NAs9A87sQ4pPO6zqP3vpdyr5qc2HBSM1yxgVTp+byo+pE4HoNzUIkn+qK7GPMdZCt8= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(8251501002);SRVR:BL2PR02MB515; X-Microsoft-Exchange-Diagnostics: 1;BL2PR02MB515;20:NKUg6afr4WuxLHLVm+xPgHtnUDJcMsssUy7NuKmzw2dTlIxbpDhSDuBspQai9kYbXMvYP2/b9f3NRc11NQi3ZHMNWG7QpbHOkLapRI1J3BXkzMn8V6IgvQ8c4jWTYgE/8RHQqm1UdJ/O8gnzK7japyWID8cAB1ND60KP4XCEGbgDUMRxiKMyQC3UNZzmZ1y8Ok5S0Vp/SnEM8nGcjmO5CQMKOsoQjmwRn+sZeplcVJmQM59sRXs5Ntzve6/A3d5V6DM3pYMhOQ0fD90qbggSc9ddRgVCcfz0wQ2Fn6hHIq9j2IhAJyKOW5HhyqR9t+02q2YdLHJ1WhOv+iBDa0uwBtsaKJ5jeJwtjUs9NJ1jDuxWGvtYeq3pyDsKnJ5L4tG9vzpYy1qcWc897VhrEpLcIp403AZvHyiK4VrU+nEM2Es6BfIVsrPnQJ9ZHirTo1uiRvviRB5K/z0Uc5flYTmwSND/0rVObls7woKFK0ozRjDZbullImpxlWTQxeTYJOTe X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(209352067349851); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(8121501046)(13018025)(13016025)(5005006)(3002001)(10201501046)(6055026);SRVR:BL2PR02MB515;BCL:0;PCL:0;RULEID:;SRVR:BL2PR02MB515; X-Microsoft-Exchange-Diagnostics: 1;BL2PR02MB515;4:zb91xXiuw0kID+gmyODJxVETGADD87mSrnotiCGMcsTYnBxhrHZyjLXXN3z5n373zZOqrm+Va4xUBtUXKzicp7Kddk51kw6e1ZHcEO12Sg/EbqblYUARTD2fw976ib49XqRJxbay22ihZBNx6BOX7ubBZmLmmYg6C9SCABgca/X/Dpp7o5Bqv8jjwlbct8YPGFVmtXfrO313kCMCGRoTxR3VR6Y9wW8ukkcMeEPKPhMbX1cOt3lE2dIAD4uGc3E3FwP6YP5sNVzyDFMtbMG0JNB0bWZhRQunufr9wNYXVmPfJdgq2UlE0OELdZtBoFLTeycFgQYAYWF7gnPMpzTj5Tdlcb7xMaXtKP/5Cc+fdPqd3I5qUJ6hlApzMvsgVgYZ1lQhzdZwMxoy7wwawWkIHOcmuCvsbJ0uC85dPP2XtN6OxTUVKB9J+Je4BrA290NVTUWXMezR38r1cwrEmcb+jA== X-Forefront-PRVS: 09749A275C X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;BL2PR02MB515;23:3mJLjyQUXiPj189cHm1CKPg9a9zL79XY9/zF77?= =?Windows-1252?Q?L86WovF893eeybwYELHMfl1dRbycmrYsvYijLhkFD+Vo7QUOXeAVI1Uz?= =?Windows-1252?Q?2PxkAeJDKrAYhnbCwrAhm34sfMw24opI3tYI08zbdNiGzNSER4TSwh2F?= =?Windows-1252?Q?Kx/VTzswRdVSzYhXO/SI8Y9LUiSPCBN0AeJoeJDznqVYftgxpO994ABD?= =?Windows-1252?Q?CG2nmUVuYEyWSxGTEVlS6BjRjV6EIIsjbxaFB01UEg7sRd9k0X4C2nOo?= =?Windows-1252?Q?iIOHwcg2NGxDgw94+Vy3B6FeGGuOgWiJrLh+Mq9e3NfPhAaPsaI1QRV9?= =?Windows-1252?Q?/Ui7MpYsy1MUd6bFLLpLKlYoZz8pMm6oGLvccnbqxVa2Wya4GUEgfYt/?= =?Windows-1252?Q?PRBhrFKdns/pc3qFzsWWL/+r2jHfUHuz0W6Kfe2x15fiE8eVKFKUp9Nw?= =?Windows-1252?Q?PPue0TYe3ByYnekCmKup31KQusJr9nNefz7cyqe82o0du1w/YMVR6V2m?= =?Windows-1252?Q?ZxOrErd2ylHjj+mks7adosUcMbaV+Fpda13p/zA+jk2l1RZSf+0K+hiY?= =?Windows-1252?Q?VWArMvSmAnXY01hcNJkwrvFKitmClKxRYHXVzzZ9RlDSBt9ryZrYyWHF?= =?Windows-1252?Q?fOnrkp8GIig6NlXYBBCveGs5gch1kkhK18bXviVKtwrWAbrFr40sX2No?= =?Windows-1252?Q?NIDyFOr9aLZMFGo4sfZYCe8P2OmgW4Ds5gaNIoTdDBdsb5Kr6007E7IE?= =?Windows-1252?Q?KYvdiaUQ4uSDaPfBuiz1W7nVRqAyXrHtxLJ+if9lPZoiADVjuC3Rgawo?= =?Windows-1252?Q?i56iRsMwtJWesqeTp8jMN/FqmRRA4yOQm5imM0ZX94LrrMk4k9sP02lO?= =?Windows-1252?Q?VY6IK6A8HxgsI1xJSZ5EWko5setrqUhZTPSLOeGf6UapYQr1iNQ1fnQj?= =?Windows-1252?Q?DRMPMfUzLJkFAZb0alGMs7aqL2WiiIt60swpSTEBYjUS6N9KFuJTgt8o?= =?Windows-1252?Q?HPbEg5ozOrnUnZ3otC0EeG3to8RFpWVxJ5V8j+M+QTQF/3ct5htIVvrh?= =?Windows-1252?Q?LALJj9Quam1QgwhXvyx3Sh8DRNsBxGKGpCA/j3Trxd/axTQdKZL9q1H+?= =?Windows-1252?Q?//E09rQnM8nlVmSxN7Rfp4TVqgctDGyvfgem6vFAu6InI7O6zszeMBQZ?= =?Windows-1252?Q?Jz3hzUPsZ/B5I0Hr7jt4t0BdlS6cQeuRkQAGi7hzwxM+QoJUp87UJgv1?= =?Windows-1252?Q?JLu4+ARyLW46F2YGatv0RBc1kZPv7/x/w5sVAk577iz199IKun9gSNf+?= =?Windows-1252?Q?/nBaLTS4ewAU3OuNDe3sbamUthyw007T6TviFQTF4D+C4pG6sojfB/pd?= =?Windows-1252?Q?LgZVNvsLcx?= X-Microsoft-Exchange-Diagnostics: 1;BL2PR02MB515;6:eEbxeCt9tOYU5C/srnXP/W6ilogbt/QAqPo7IqDtNtvEtYriSNqxVSzxr7cfHvqXTaib0WMy5qjNxwBup6/aOf8XipwY6douHdIiRMjLeUt8nExzRyI7/PtUt/wRq943Vg+0sI/klmS7uBNB3nRkMMPnbP68cVq8jPYDxSI7kpfk917bsfCsNIqijxGB+RfZTpoVrinZpFXfPdwk/QKNR2A2AhB8vtzmZ4/SuD5hSDmuloIvUUND+MI8fZ9OI3aX3S1cBxneb9CmhuZRN0cC/hvpJy8WclT4jwYnOLM++tY=;5:21/JWi2sarHXT2bDGOR0GaV8scS7LGe7B4b685Bt/Q8+HGhWmb1QGZVZwxa+0ZOhF1bCJqxCrcNBKn+hvpm7lVd86DwweBT7G/qM2ewQ3ixRBHAwyxxYvc+QvW3QdFSGd62ZnlvRcNoMkjx9RuYgRw==;24:fmu9BQ8BGUAGax0+e8E47V9wdys1PSsYS+ytNZlairy3c5UvLn3gl57AXf6p3DWQUdism/09qThtbuMLGkN4kEElSYKCamAlt6beDfVJ068=;7:5ai0lsoKIKwPJL+0SI6eHbn63cFjKMvSfm/4RUr090KgYtU/n4Xu5EL32MCddbEeguYZoNeetB4VN9r/oP86xNxig4nC6NAdEVN3NlWXR3y7J754H8SQW81FiTWwF0L78Ox/9FnLlRzaYYwgO8h+1tdcHoMU2m0XWsWjR/Fnh3i6jBlKdFJSN+tqBa4H/8luM3XaaqCI6W17ymO3wl8paQ== SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BL2PR02MB515;20:6PTOMPs8MPyIXKjgLxAjJa0tgl3I5SquX+IKfNp+v1sG7hs6OlrIE5Ks5C2S/isDD9IELfDGHAaTVEjf/Yl2eP2v9/Pup1vneu6yScj+HlfIouHkY1E29o84scu03URgzSJqku7A0XfnNimyAe3Ses5d5r9sIC9idUoxlrELMbdeMx+CT1jerOrW0k3UsaanLJo27A3ix+wVMsuHdhCzOrDaKfHQKoU8JDVkAFdeLsdIQVbwTjxkqppZxTIVLBfj X-OriginatorOrg: sandisk.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2016 08:35:27.4366 (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: BL2PR02MB515 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 06/14/2016 11:54 PM, Guilherme G. Piccoli wrote: > On 06/14/2016 04:58 PM, Christoph Hellwig wrote: > I take this opportunity to ask you something, since I'm working in a > related code in a specific driver - sorry in advance if my question is > silly or if I misunderstood your code. > > The function irq_create_affinity_mask() below deals with the case in > which we have nr_vecs < num_online_cpus(); in this case, wouldn't be a > good idea to trying distribute the vecs among cores? > > Example: if we have 128 online cpus, 8 per core (meaning 16 cores) and > 64 vecs, I guess would be ideal to distribute 4 vecs _per core_, leaving > 4 CPUs in each core without vecs. Hello Christoph and Guilherme, I would also like to see irq_create_affinity_mask() modified such that it implements Guilherme's algorithm. I think blk-mq requests should be processed by a CPU core from the NUMA node from which the request has been submitted. With the proposed algorithm, if the number of MSI-X vectors is less than or equal to the number of CPU cores of a single node, all interrupt vectors will be assigned to the first NUMA node. Bart.