Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758200AbcKCP0n (ORCPT ); Thu, 3 Nov 2016 11:26:43 -0400 Received: from mail-bl2nam02on0052.outbound.protection.outlook.com ([104.47.38.52]:14607 "EHLO NAM02-BL2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1755952AbcKCP0k (ORCPT ); Thu, 3 Nov 2016 11:26:40 -0400 X-Greylist: delayed 925 seconds by postgrey-1.27 at vger.kernel.org; Thu, 03 Nov 2016 11:26:39 EDT Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=David.Daney@cavium.com; Subject: Re: [PATCH v2] of, numa: Return NUMA_NO_NODE from disable of_node_to_nid() if nid not possible. To: Rob Herring , David Daney References: <1477689302-32671-1-git-send-email-ddaney.cavm@gmail.com> CC: "linux-kernel@vger.kernel.org" , Frank Rowand , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , Will Deacon , Catalin Marinas , Robert Richter , Hanjun Guo , Ganapatrao Kulkarni , Gilbert Netzer , David Daney From: David Daney Message-ID: <93b7769a-4907-176e-9f18-0bf6bd72d15d@caviumnetworks.com> Date: Thu, 3 Nov 2016 08:11:05 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [198.233.217.214] X-ClientProxiedBy: BN1PR07CA0041.namprd07.prod.outlook.com (10.255.193.16) To CY1PR07MB2135.namprd07.prod.outlook.com (10.164.112.13) X-MS-Office365-Filtering-Correlation-Id: 49f40cb7-81cb-4f2c-5d13-08d403fba604 X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2135;2:OIa+fhbp3AvS/obQzTqDKUy9oQPcHuAvR+4TVu2I9i4A5VSHLhhA5ql/HlqJWSqtqM1PrviXIuEW+gXqGuA2em/rOyVMxIjfCLK/PGIqQv3rLCMKH9W5oOJdAMxHtgY/chFPxkUR5Jn78KzKmfAUkWI2+dx0OnRGsAY/YE9T6I9pWAArBSfBZgEyF0XU00pOnEGPnixuFmQLNTJ2XaEkpg==;3:Rgr8xZiKwgeWNbiXHPenXSf68CqnPkvgZqy83i3zlZzdkgSt2f8B0pCHl1l21WVDVtmiPZ3xq/zghUuE5hS/09cVkwW5XuRYj7h6rYEOmnCwFf9TcdUGnWTT0zix14nXhbQjbDoIgjiD8MT3g7atPg==;25:aX4oYBuuhWtzvif0q5diyxncrdepDT78N3NNdv+fSfoflWPQ6D6iAJEJ/HR/0t0FzzbtBPK28s0FW6T98GOtmyKeGYpjnGXWmOmL/dQNBah/n7y5Kx0NQiTxtDU4Or2Jw3NVhq5hC2dPLLylcv6po7Ck4D45RM0UBFIHNQcVILF2a1j81xaJV2VPDAC2/61dyjRfpUBIGjH9CsHJn+bCJCLTh/89Y1DGO4uiK8kc0qsUefRSJrXLMdsz95YXpwYJ+SYQ5AtzSdlWiM3zCqAZnOl74WjsQAPqqYBWxc15H0hfPv6lXhxQMsNWJfbuCZ/TXI8NqtvtSqTraVXfn3aBUileA57x56P4kaXUK5xKDYZZiQNBChIPZaV3lM6Y7Fu36AjdLj3CMdPHl3MLNzKsXhvogNLyy627q8r+WlL4Ric= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR07MB2135; X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2135;31:6GQkABexHCMu/b5CvcbpuuM/ESdkTRKuQ5RS/Hid7vDMvQGhvBOzWyJUMrgwDC2HfxYA1g9tBW4iw15rgK7Kuxx05ZV/n/6u7/vPIqqdybJOcJZUn1ASo/sGkP3C9Cc7GpuCFYjm+b0vojSkmVw+APJ9kZx37pLda18apVhn/tv6DeDiXFhBs3bweOp7PVUo/CpXYZgcpQRRtA7yxpm0dYVXVvIkTZEj3NQqLo7clrlZ6VUXvPDgyWqI50MOtgvU;20:p/X57wmihxM5JFppQsuotX5g07rFyYKz9JRRAzK1j1mz7k+tV8McvinHrupb86wVwNKQtNb78OMlf9f8pAeSgbkVb/k9M6uuxqdIe3Wn7cSkEW+8HchYZo4AcJ+/RrvP/6Hl8XNMX0A/UtFGRCbj6SzGWoI8gM8mlPc3h0kwbAnyjFHepwhI+FHdgmhJC3cTXlPZLfwz2eSqclMt2lh51ReJa842FMtzsmH05CQP48kjSHI4ooxImLuJ0eet0JUqVTUkite6YVa+d81hgy9INsJdnKvKWWL2EFSAp7VDJ4AcqUhD3q60scMo7yXH8R2Prqv5FIhBNFIINR+fpB17QaVqYdYxkjV0RByKgroKW+nKDEjfznNf1Q3IZvsbYCpx0KpHsJOPDRzvaHvvLZ2htHebbmJzDt+feV+8IRCdXoj8vHrCydBfxnZDJIwy+sZkroobHNF4rXdDcajPd0nuUn0W7LGfT0wxOHz3wDutUZCvOh2GE++sk5YXcIx9Lpbh9PzH2bfot2p8cLjYW4jaTBphtnU0JVkxTl4+y6SGppsAU03b4Qx1tUcGx+L0wbkQaWEfwa36s+Ci2bdyt6+smoFsQdxGKuvUXBROlu5fs7Q= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001);SRVR:CY1PR07MB2135;BCL:0;PCL:0;RULEID:;SRVR:CY1PR07MB2135; X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2135;4:6cJgaI6/my7Ew8iGA2PqkxAFZIBisOiH9myTVc/1dcuomJnay2bOOSQMzId7f1Of7vtwmTC1rvAP4KQw3r6uJLLj7KSveQCsHbT8/G0n1hqCQzwQ8cDHDn1AEE8sV29p2UonhPE6CikfECDheXZmRrZg4XYx+HteUBkNeAFlwVls88FZfmWIfzI2RpDvcA0ayDgx6uG8wT9KGWCVqcQ0Ae7aBOA79ZSxpSMky9ZEtdPlZnMRhPizbdeEANy4GhcSTSF5vnRCvyjXx5uNxg0xaLf7UAHzKhmX/p45GTRhm10BImy24iuzDS0XvK/rsKmkyXap1yEZBaxHpzHg3PjT5iFYSIUVhIYghZrwQ32ui5VVmreK/jy/n8Tcz9/s2xlSYKJHXdDAci9s4Z9qfCI9vA== X-Forefront-PRVS: 011579F31F X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(6069001)(7916002)(377454003)(24454002)(189002)(199003)(31686004)(4326007)(101416001)(6116002)(65806001)(31696002)(69596002)(7416002)(76506005)(33646002)(66066001)(50986999)(68736007)(54356999)(586003)(19580395003)(42186005)(36756003)(2906002)(53416004)(76176999)(65956001)(19580405001)(3846002)(47776003)(4001430100002)(105586002)(7846002)(5660300001)(189998001)(64126003)(42882006)(2950100002)(97736004)(65826007)(92566002)(6666003)(5001770100001)(230700001)(106356001)(107886002)(305945005)(8676002)(81156014)(50466002)(83506001)(23676002)(81166006)(77096005)(7736002)(4001350100001);DIR:OUT;SFP:1101;SCL:1;SRVR:CY1PR07MB2135;H:localhost.caveonetworks.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTFQUjA3TUIyMTM1OzIzOk00ZmZ3UVMxcjBWK2V6U2RTQ3ptdkw0dTVL?= =?utf-8?B?M2FZUjdYQVhwc3dtVWtSOG4xRjZCNTdXWVJDc3NmR0NVZC9WMVhQakxZZmN2?= =?utf-8?B?cEI1MzF5N0JoS0ZFNXVObVI2SGhUd2lSVGo4a3kvd2REcGtEZ1hPYzdma3U5?= =?utf-8?B?Y05tV0czTXBOdU16enJRNGNNZVdteVgzSUVtRXFYRmtQUW5TV1AxNHJwSmVU?= =?utf-8?B?bHNybWptemxubmYzQnVCbGlZZUFNaVdJT2x6QWJNeTNSQmpLaWdjWnRNcFFZ?= =?utf-8?B?cXpONm4vUXdIY1dRMWNaSGpYcXlOTlVyMHRrUzB1ZXN1ekNzYzRkc25TaTFq?= =?utf-8?B?UVppdnUyZDhSYUM3cDRwVXpoL3JCQVBmTjE5SThQWXhaVlUrVnVNd2dtTVNK?= =?utf-8?B?WUJENXEzN29UeXk0QlpaZkFpaXVRM0I2N05ob1lQbld4cW9nWkt3RmdaSGVp?= =?utf-8?B?R1ZCODBkMFNtTWNQRkRCSEZqUk1TUHFwdVpjKzVMM2RHc1laYzlQYWNBTzBK?= =?utf-8?B?VDZSaWtSWlhIV1ZjeWQ2SWYyTFg4VFhpWHByM1ExaFJ5U1ZITVQ2WXdsTDhG?= =?utf-8?B?MEIvb2U4MUE1b1ZNd3NsSkZYSG1NMENxYjI2UDgrY2lwclR4Um9TZ242WWgr?= =?utf-8?B?UnJqc21wNGJ1UkVuNUVoTCt4WXR0UThmckF5amF6a2daY1NtcHVXMDhyb1RP?= =?utf-8?B?eXlUandoamVHQ0lZZS9CSytGalYyRjk3MmovZmhxSDczZmtEbUl5SjVTL2JW?= =?utf-8?B?MnRYZmFNdVNCV3htZXJIWTQzTjVER0F3SURFQ0lTcEs1QlRLMkdFWHhOWVNG?= =?utf-8?B?ZHg3SmwvL3NlbEw1dXEzRGU1Rzhhem5LeXFuYlhxRjZ2QlF6cWVwTHBBaWI3?= =?utf-8?B?UWhPbngrVkJucFd3cmNqT1VxWE1Ib1NwVU8rMGx2TWZIM25QaGNuOHFidmc2?= =?utf-8?B?enRyU2tkanoyTkhQRTh6R2NrbytpVXNBUGtUb3pNWlZ4ZVdFWktoS3A1bkZ2?= =?utf-8?B?NUFEdkZBYVNIUjJZc2tudUhlaW1ldm9semJzbEt4Z09xMXlJSlFIMXF1OGVU?= =?utf-8?B?ckRXOFdwL0N0Q3NVVFVCeTlDVGt2NXgwM2tFZEx5Z0J6bGtsWWZXSWlVZE9W?= =?utf-8?B?SFdubXBzdkNHeHIvQTNHWEZjOTdMTm9uQWdWUE5VQUVmV09sYTV1U0lSMWJl?= =?utf-8?B?b0g1VFQvZVQ3NWFXZ0RUUGd6UlBVRFRDSjVSZHNra3hyNS9oMWF4WUNvQjQz?= =?utf-8?B?K1Z1SmViRVJmR1gxYVBzK3FqUVNQM3pZS3RsMnRjWXBDYzZ2akhnV3loRnBy?= =?utf-8?B?UVFZb3duS0ZoWXRpdWFYSkdaMnh5M0Nwd3VGSHRwQ2JiL3dlL0cwTXc3UGx0?= =?utf-8?B?U09UTnpieVBQalhLWTVjQ2NoRk0wRUNxbkt0Z3Q2b1lhRHJ4TUlPeFpJTlFX?= =?utf-8?B?a3B0WlpQYnJ2RDBRdmFjWkdJdDNNWFpFdyt2NzlxNXh3Wi9ZY1NEcFNrai9X?= =?utf-8?B?TTh6bDRBY1hRRXptSmJxQ0xGcTRNTC91UkordUJsNGRTZ1k1OEh4SWVDTHcw?= =?utf-8?B?dnBieklpQjZ0MUYxNGlESEhFZ2toaWNFRWxqL29iTDdta3pZaVF1Unpkc29m?= =?utf-8?B?emRPdzhXaFAvOHFWa0FQa0JxMWVkb2hEVGtnS3p2NjNJZGxzU2x0SW54WDRr?= =?utf-8?B?NzBkMVN0azNjZ0g2eHl4NE5Wd3dTbThhZGhRNmxPTjhESzIyajRyQ055NkpB?= =?utf-8?B?OVhMbHltUHUvUzBzSlR6VU0yOGdncHkwMGF6dHkrUW1STk5LNTk2M0plR3Z6?= =?utf-8?B?Sk9jL3dkbHZ4NGY2NUN1S3I3alFQOVczUnZsa3k3MnpCU0lRWXNmWVM4c3ZM?= =?utf-8?B?eTlpaHBlUUc5QjN3cGJ4QnNpYnVkSDlsUWJSUW5ubnltd2tpdXpWQlZmcUw3?= =?utf-8?B?djdQQmpLZDFqbkhRcEcwUU0rTWtwaDJNak9xaWlybnlGUXVGdVJhVjZoU2Vq?= =?utf-8?Q?h6fi2v?= X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2135;6:Z+LtTVd1zua2/PqqkV+aUgGBrjJI3mBLmgXlWHgPGgaVyfKG1gcBtfUK4b3zMiDkCYv7OUpsBooeBc6agIi7DYPSGYfHT2ez5fzDRXnE1DRmlJ5WvCvhISC5pmfy2gKpQJ6XwGR98D8j2vkngcQtoCGEyVVqZEvR8Vb4nKIbap0/UXfbU/0WQFhT80ViGyI09XQZCUYtYtMjKjFQOytc9UdVkc+pDZVPlNdOCcpwMM0yTEVjShNHgrFwFRTZCoQlRJ1GdWE0Px+bMYJGwmAKd8pipUMSkX+5RLGMN7dyDeePRGMXFbS57+C7n5tTbY84;5:hhM6/StaDGOQtknQGFGWlvWzbCeG6zIcmuq2X/ByY2DxyoyX3ymtstAMsT4yd11th3SajihVgduOL8VxagNY5yF4AJqhnW9tF8/QgWP1NX9qTJneu1HQSEL4HkaAMkJLyT4GsRTBLDHEuJ0IWpvHl7ntBrMm2nXIqi0tIDiT23c=;24:64ej/E0Go//H9C+JmOwM6JHDsAhRGuXR5qS+0niOj7OaqPKNL63xuMCEn1PUQ4BwYUC5s6kYrpf7donmtPSy2AxKlfGRo3dzenkagpQxpiQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2135;7:kcEQj9bQx3S4eCuNwP0m2Dq0PZrUv9TGA4EBJk6lr8IKZC0j7KU3+ACfWZRp4JLTfTPT48hLEGykD0gIwAQ6zI7hB4EREw4XtCgeE268IWQNbkYGId31yB80rAuncaDHxZ1wCGGwsef/UzTtx4VVc01xXtsqARzG/lTp/z1BAks0ENmm6YPDecfVYcZWHYFvm2uGTLAEMEmqkvkXKiK5Qkuo9ORw78R+pEVzAIPv0zn/GtY2dB7wF1wPUOx8gRUmvX/z3dIZeqpI/0NeIfkf4C9t955fKXQLenRu7rEXGhulgMTGA+VQEoHVkiMywg2uDF0I4/ByQB8K8i4h2rMY1272i54YjbwO02/FZ1xYGrY= X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Nov 2016 15:11:09.4317 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR07MB2135 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2635 Lines: 64 On 11/02/2016 08:37 PM, Rob Herring wrote: > On Fri, Oct 28, 2016 at 4:15 PM, David Daney wrote: >> From: David Daney >> >> On arm64 NUMA kernels we can pass "numa=off" on the command line to >> disable NUMA. A side effect of this is that kmalloc_node() calls to >> non-zero nodes will crash the system with an OOPS: >> >> [ 0.000000] ITS@0x0000901000020000: allocated 2097152 Devices @10002000000 (flat, esz 8, psz 64K, shr 1) >> [ 0.000000] Unable to handle kernel NULL pointer dereference at virtual address 00001680 >> [ 0.000000] pgd = fffffc0009470000 >> [ 0.000000] [00001680] *pgd=0000010ffff90003, *pud=0000010ffff90003, *pmd=0000010ffff90003, *pte=0000000000000000 >> [ 0.000000] Internal error: Oops: 96000006 [#1] SMP >> . >> . >> . >> [ 0.000000] [] __alloc_pages_nodemask+0xa4/0xe68 >> [ 0.000000] [] new_slab+0xd0/0x564 >> [ 0.000000] [] ___slab_alloc+0x2e4/0x514 >> [ 0.000000] [] __slab_alloc+0x48/0x58 >> [ 0.000000] [] __kmalloc_node+0xd0/0x2dc >> [ 0.000000] [] __irq_domain_add+0x7c/0x164 >> [ 0.000000] [] its_probe+0x784/0x81c >> [ 0.000000] [] its_init+0x48/0x1b0 >> [ 0.000000] [] gic_init_bases+0x228/0x360 >> [ 0.000000] [] gic_of_init+0x148/0x1cc >> [ 0.000000] [] of_irq_init+0x184/0x298 >> [ 0.000000] [] irqchip_init+0x14/0x38 >> [ 0.000000] [] init_IRQ+0xc/0x30 >> [ 0.000000] [] start_kernel+0x240/0x3b8 >> [ 0.000000] [] __primary_switched+0x30/0x6c >> [ 0.000000] Code: 912ec2a0 b9403809 0a0902fb 37b007db (f9400300) >> . >> . >> . >> >> This is caused by code like this in kernel/irq/irqdomain.c >> >> domain = kzalloc_node(sizeof(*domain) + (sizeof(unsigned int) * size), >> GFP_KERNEL, of_node_to_nid(of_node)); >> >> When NUMA is disabled, the concept of a node is really undefined, so >> of_node_to_nid() should unconditionally return NUMA_NO_NODE. >> >> Fix by returning NUMA_NO_NODE when the nid is not in the set of >> possible nodes. >> >> Reported-by: Gilbert Netzer >> Signed-off-by: David Daney > > Does this need to go in 4.9? That would be my preference. > stable? If so, since what kernel version? > v4.7 and later would be nice. I guess if you merge it, you could add the Cc: stable@ tag Thanks for looking at this, David Daney