From patchwork Wed Jan 18 09:45:05 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Sverdlin X-Patchwork-Id: 9522983 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 8E6846020A for ; Wed, 18 Jan 2017 09:45:48 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7FE3F2842C for ; Wed, 18 Jan 2017 09:45:48 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 7471C28498; Wed, 18 Jan 2017 09:45:48 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.1 required=2.0 tests=BAD_ENC_HEADER,BAYES_00, DKIM_SIGNED, RCVD_IN_DNSWL_MED, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 974582842C for ; Wed, 18 Jan 2017 09:45:46 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux)) id 1cTmoL-0005uz-EB; Wed, 18 Jan 2017 09:45:45 +0000 Received: from mail-eopbgr20135.outbound.protection.outlook.com ([40.107.2.135] helo=EUR02-VE1-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux)) id 1cTmoH-0005tY-HG for linux-arm-kernel@lists.infradead.org; Wed, 18 Jan 2017 09:45:43 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=pE+x/ruwcjH82E6APLQCTSWBJe2WvkAO8kwPC0kNfXA=; b=E7sn/ZCZXnC+/9v4v9d8BgbY/aUGC8LYFPnjG+0IPmuDVhpygVKwobDpBeQyJ+5PVkrulwbXG3tjpCFMlJa923OsV19boQGo6ML8DOB6MD19PyXuTg9ORDqMblNduavDZV5CFugQ9Z2GcduW3R+g2+rLaciQh/dn4VKSzgcM7Bw= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=alexander.sverdlin@nokia.com; Received: from ulegcpsvdell.emea.nsn-net.net (131.228.2.9) by VI1PR07MB1328.eurprd07.prod.outlook.com (10.164.92.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.860.6; Wed, 18 Jan 2017 09:45:16 +0000 From: Alexander Sverdlin To: Subject: [PATCH] arm: Use generic irq_migrate_all_off_this_cpu() for CPU hotplug Date: Wed, 18 Jan 2017 10:45:05 +0100 Message-ID: <20170118094505.32278-1-alexander.sverdlin@nokia.com> X-Mailer: git-send-email 2.11.0 MIME-Version: 1.0 X-Originating-IP: [131.228.2.9] X-ClientProxiedBy: VI1PR09CA0072.eurprd09.prod.outlook.com (10.174.49.144) To VI1PR07MB1328.eurprd07.prod.outlook.com (10.164.92.142) X-MS-Office365-Filtering-Correlation-Id: ed27048c-0089-4ca0-7619-08d43f86b60e X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:VI1PR07MB1328; X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB1328; 3:p1218hIEArkHMFl+SimjvEc0bOORq83fd3rvgcvzGEpoGZEbxCrTDfy3kRxdhmYtVyvoV8Fk73NmyzZAM3jgv4bEiwCOGZZVkG6PTJIhrxe1ZJBHUt3LVTzsjYIXfE6aouYHCTtCnSCvKvu99utLaynCvamKQXSyLZA55NDYO9EhBenplezGJHNJN501T8FJd0yXB72Kza3RHBdfzyLLEz4x57SpAz41LzEhyt6yFlouqpCGTs0iFOt78qvwIUgemRUUl2Zv5WgejFVfCCg7Ng==; 25:35Ya+c8K/+BBrqkJjXh1pAPu/+BPeI6PiP+Hd/GlFwJ0TLMUpvlKPIPk7euFHyLq4r4TYjDcGwrifuCNmM7NhocR3ps9XoOelhUESwMLUf08OfE7Z+Hjt5J8xHoygyNpe73rVT61kmB9Vp9txDFR+y1Di+LxSn2rLd6250h/rL4GIpFc4HgLpa0ktzF7fBdSEgSdAopgTmLdNE3TjoQ8vH1KkB9E9R6tRDrgKXj4NlNivghKprIVpUHK+KP8uO49gd8RNtuT1FBe89UJneXAsjGAUY/pqaMNP3XkYBxN7qrUJMOk5wERbr3B8iI6AKGiMrs5UwpYUXJVx0suyKy/nPUSRXbe1PxSQRcmrlfXzo76WpEbhL3cdOByOZgrHf1WTOmmh2DsHb5OlDvRIy6or696DEFqa4ayjbg3rQ0vR7nhmReE0/yrDvt+0hYVhYqxa98B9PqSIzE9QBnmNbxQfQ== X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB1328; 31:+T3Nr8of0ORKMTWqrVcucdnwz8PGPwO+tV72ZLqBHZ7FkXz1tH0WuHh58eDsTXbdb2eS4j4GxYN8IS5rvbH7nbSA1l1wTDgb/JmkTjVjzjErI37tSEYbmmyK6WlI84HrkpMNXFFNoMC5bx4CeRmSr8eZH8ZcYj1Q4e5xDAHAdCSy5aFpakDDO1nsjiCZRTHYF/miqYTyHiLMMT7N4NuRuBThfWdjFpJQnsM4ikamd7dRk+b9WLJyr4Wgpg8ineVA; 20:a9Ao/XxYWb/ShSjBbHAWKQCCAGIuQ1XhV82x7xaCnMfPVBjSdT+BFYb4IQ4kuhcQE8PgozvDJrAz1ACvvcMqwoxTDfiJzCfPcDZMSeHXzChI4qCHqUHlTnGklo4QJrvNkVVxSwjKLFnQrQW6jG5L2unlwBAJfX3reOsbrrRt3oSOYBkRklbSQrPDbi66xJsROeR94oBTBYPEha03i/N6Bo1WOKGB1Qtg8pAJGiBfgnlLgyBwtk5nPoHPIrz01NWVztz1XFeSBXbUEuTGwjUKgtL2yR8utxBz1R5n7LNvQkMLcFGxsVDRxnXGF2sCfZf30ntZ++GU7fUQD2zegacnEi8+zag15mFDt1lMxZ2f4RolWI46WMVJhjS2w0Ux4Sk13r+IUCgZqkY5QPBRGgkT26Lf7bFcVhFmH97Ytv5rI6/8mTVBRLGvJwcjqU+9NV+S88bSTI6NO/ygt3wmruj5uNVriRW34gJvmY05Y6itUZTDJBwEltf8keyP7Fu4/mlIrP5V1b9Ei0N83He1IBtWX8BtTFFfwYcXitEUzWyIqcjzL6ICIzzMDq5GUFu5Vt+t1MOCvEoF5SfApmu2J1N3YJloz5h5LyQGTeEOCbNc6Do= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(82608151540597)(258649278758335)(104084551191319)(7411616537696); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6055026)(6041248)(20161123562025)(20161123555025)(20161123564025)(20161123560025)(6072148); SRVR:VI1PR07MB1328; BCL:0; PCL:0; RULEID:; SRVR:VI1PR07MB1328; X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB1328; 4:YIMMugUHixZsxiV3YTmFXdTmVUCbGfChfjW4NBQ7bpycxgck5BCQsEC7HkiWeZ7ZJ9vARbPI3RRsY74d30xm33rH8oiiWp76xO7NL+4SXqC9KesbxqvPrfhP4cOrGmql0sncTaijmgeqg7+HPFgpuGAT1DcnCuL+oYgWKLxtUF9CbjSW9A/6mLwQGd3YfBS9sf1+KK1BOjJqcAk5WRkHU3WgvuQ5ltWE0uJpxNicvvUMor+IYF0vSdT4GEBML8XERoUsSAOV11Q3DUkd7rBei9Fr6aRswEFqC3bH51M/9Vh4D7IJRTYiEpItq8blmRucLjZ4LscG6OJowo7LQFWj1q70fdCiH0v6dSsj1Mfs1VAAYAJ9M/y7qUCQ18W/6JbctOd/040maXCQy8Ie+Oo9VXAOHIMMZw5xIYz5gES0S0CjXZcRSat52aAXm/yZ9Rvlj9ib1mMD7lYUsMjydlFrljd5oQ9JlXP7g3K/heDQBDj7gnT9Oy2fH3JWlub7H/gCLQ0447Q1wI8KvQam+1Um7AHGC0qV6GiAQbzYH97N1fWZoFiQmcYODRq/xo67VoUZhlGEslTtOqvcQor/iQybpLhYE4OGVlvFKo9SLofFy7Ra4JtSV++ALZY3uLBgfbp5yZWo8Y/qWwXNmCbqw4AL8D+zpriHWg/5e9KczVYQJ/vxsvA4ulqKzh5aZcaO7RFlUK9gMvYsU42AbyKtISc4eHVANo1TFEjivYVFe+5MPyA= X-Forefront-PRVS: 01917B1794 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6009001)(7916002)(39850400002)(39860400002)(39410400002)(39450400003)(39840400002)(189002)(199003)(25786008)(6486002)(6506006)(38730400001)(189998001)(1671002)(3846002)(1076002)(54906002)(6116002)(33646002)(68736007)(66066001)(50226002)(50986999)(305945005)(7736002)(101416001)(36756003)(48376002)(47776003)(50466002)(86362001)(575784001)(97736004)(7416002)(105586002)(42186005)(106356001)(81156014)(109986004)(81166006)(92566002)(5660300001)(6666003)(110136003)(8676002)(53936002)(2906002)(4326007)(5890100001)(5003940100001)(6512007)(41533002)(266003); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR07MB1328; H:ulegcpsvdell.emea.nsn-net.net; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: nokia.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR07MB1328; 23:zE8LHXXn0Aenam7U3HPioiHat9XA9qkpleVMR/r+E?= =?us-ascii?Q?K/GSyG5rpR3E57g0qgY/Dotv8h9R5HlQOCyRTcRW7qczn6SuDIoPc19eaDCj?= =?us-ascii?Q?yc7mbG4MJujJcG3wMA0x2DCA2Q5ZfGiJoa5bSWlp+0cTB0Fji7lvoCxrzo15?= =?us-ascii?Q?y1y6J2CiQSIZstUpYjtV/M9ix5p+92BMvI1Au0OuXpqeF2LyIxY6MlA4z2gQ?= =?us-ascii?Q?eDIe4G/BY7QO/gAXvGHotsfjGouGg2WKc9FVM8kT6phWMQb6Uu5DNKueCoMd?= =?us-ascii?Q?x2giZGL8w06RVqYagnTVWeIbI5C3h5qF4h5uG0Q4+iJfqNEguWLLmt9tcYjy?= =?us-ascii?Q?czr4vzF184aPraIoCEfYAq9edePRCAq8AJBXr9Oczq+ofGeEtYgKmBk7B+FJ?= =?us-ascii?Q?KjYUaX59AuhfeoYy9Lt3Tr+tjYpi/I2vDExNYxE/HhKLQuO4ySecJu8vfg/s?= =?us-ascii?Q?jnAvgQs7Mz814TTKFFzT3wtxP2Rw4mcucX/GISytTgac0/N0iJIeT3jr1fD6?= =?us-ascii?Q?HAhVYyk5P43qtrSJCgfvXWkHdiEJi8BBlgQ98Wz6m6yPmXhZnujsMrzDuZ+t?= =?us-ascii?Q?4UnHELTLDkX8wmGHvZQl62vYnasB5JHh/uTSZFZhpx9DMmR15x+pKZJyGhN6?= =?us-ascii?Q?gymqRzFpQdjLuVgze2M6rBRznwT8vX3kb/EUnno795D0woWLYWku6hlkAQqP?= =?us-ascii?Q?//Kbafz6DL4eRez1MAxzPUFyh9rajAHGdgvv5Nckw+P68dAPLrZA4hG6LBpF?= =?us-ascii?Q?UYMVrmUWqjOSG0EGVUpNbbvDr9/0lG0JJvQpPjmzyEqX+Cm1esTMQfUguiwT?= =?us-ascii?Q?Jkq9J7/bfpugHUwCQyVFPkIES2SjLR36hg9kHIH2AtvQZLfMsWz0rK4Jxvoo?= =?us-ascii?Q?xs7h6Jddh9aBpPJdo9+r5sDXRpDw3cE5KZ/12nzSykrjdV+I8YbuLbctEbFd?= =?us-ascii?Q?SRu0R46xZg1GIJsTkDcc1qGUnuwFZ9cu18SLxy6u3ZuvNHOV6l8t5Z2yQZX1?= =?us-ascii?Q?PUdN5Y+Zxa7Gfu2k0Rv49H2vaHzDSbODuHKUqGUsCoIhLQluYplo5n/Dd6v3?= =?us-ascii?Q?sjL5xrBHdzCCDzr/ju540mOwqZSzJ6BzSG9k5yff8c5309yhDYrqsIpI0M7W?= =?us-ascii?Q?x1rGzq+KfxZa8aLdNgN1SD0bQeakiy/MjuPqx4QmIpi6y6aQwxjCzPUyrenf?= =?us-ascii?Q?fm6X6Zi+qQPZuBNB5rCAk9T2FrPc0iC6sD1A+j+CdMdPZnlbREhSeRu+h7wn?= =?us-ascii?Q?cLW4x4sfiSFPyx5KS7tYbNZmuGN9EYaNRNVEDNj1IaHaBPN/Kr3JwK8L3g8V?= =?us-ascii?Q?na6TAkaS86wb6mBxUVwiB1DhrVhjIzUWU/a/GM62rok?= X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB1328; 6:jNHirche//dtTKskCe1XngmrnspdHaKv95mXcnbKlZWmvxG4L4fC2lkulTA5AhvJ39Xib6FWpnFBl4wpXxUvmxwKOroMkq/oZI4+JHfSNrPqA5cPRdRnR1Ierzr3o0WKPQyPVzyDbhi3rX0h3DxlWWLtkGIBOeUetbkAjbXZDxwY0Vl5ZOaYKHAzc7ZPtyoR/xOy7DS2q00CVwKYxYhrS0j9KdacetbzP97ThvbYIKUXZAWERmFxoJmqYTUhxf0uPT+L2vOdH7VyH1aPYzr9kXrDifE+PCepxql3rcilKr/tLsIEWqrnH6WjF9nBL8+MKQWz/6IHf/sidMH0pplAuXx9ZhkF0dVoNIcd0MdLSJ89a1Xf4qUetDQK5CPQ6eJobGTnWSU3k78GWtuPkqqHpuyGWXlHXcSHLC+wLg97xLy68o0nU60pf+GasfmxByY8siK8abcte/aA4up5d9ut5A==; 5:rudPzRL5k3JLFrg8KL51NtsCnsNjCZslCMjv7B/E8ysaL3/+9FNb/rveTRevJ+NOG9WAyRg/+JzjuY6mfTWTZJ174rLX5mr66aCcBfYGXesIqsphnk3K8fuE/x/mJnZU6iNcVTt41XtdGpUd7hWfuzu+dvTH0cNN4Hie7+hgCOs=; 24:bq8hOxYM9UgkFoBsLQaD5BbaF/kZzR6k9xMBNYEEaRmT5sodAhJu8goN5QYulGXq388FLe2dxs2LhEmxZo+5Xs6fmc2+ayb46898bIem7ug= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB1328; 7:R4ChnT+8uGaqCJroStmjXvJrF27mfH/IxKynLh0XfesWp2JWmCvSxx7AR4VGpFLVPxtI2sq+DgPXW+ldpoPMXL/6/8tzLSZIxtm2Mi3okMrB4Y2hqrt467yv6wilh2JQ4huXj38ZnfZUeh+mHXxslgPqBiHez/2wBZKxokd2KFYQ5KsS9Ow4NGF0/G/ifbisvOzbPBBvC8n7mLtbAON6s5dwN1f7Y3nowBmb3EnVaM8Vf+YhwbSP++i6mLm4dL1km4PUHDPc/+EV6QjS4WRJKlsLLs9FXJ2ffAmUTvdgGxoDCb2nZQ7F66FyCWv6afNgrWRwOeNH+1w0zsTDpZK1nlq7HRJMb0MbW16rxw2vlUpCq+YFanBuLsCwGG/+VDLZ4tzmDTWFf+1Coe67n7yFvTm345fA0wrw5dNa/Txe5N5m9f3iReJhRptI8zCmJ2sqPsQ9w/P2KtyCUg3v61hPiA== X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jan 2017 09:45:16.8512 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR07MB1328 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20170118_014541_960219_60D5B28A X-CRM114-Status: GOOD ( 14.08 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Petr Mladek , Chris Metcalf , Russell King , Krzysztof Kozlowski , Alexander Sverdlin , Andiii , Aaron Tomlin , Andrew Morton , "Paul E. McKenney" , Thomas Gleixner , linux-arm-kernel@lists.infradead.org, Kees Cook Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP I have found that .irq_bus_lock/.irq_bus_sync_unlock of irqchip are not honored during CPU hotplug migration and the reason for this is open-coded IRQ affinity re-configuration in the existing ARM migrate_irqs() implementation. Fortunately, this was already fixed for ARM64 in 217d453d ("arm64: fix a migrating irq bug when hotplug cpu"). So, just switch to the same generic code for ARM. Signed-off-by: Alexander Sverdlin Cc: Russell King Cc: Andrew Morton Cc: Petr Mladek Cc: Chris Metcalf Cc: Aaron Tomlin Cc: Krzysztof Kozlowski Cc: Andiii Cc: Thomas Gleixner Cc: "Paul E. McKenney" Cc: Kees Cook Cc: linux-arm-kernel@lists.infradead.org --- arch/arm/Kconfig | 1 + arch/arm/include/asm/irq.h | 1 - arch/arm/kernel/irq.c | 61 ---------------------------------------------- arch/arm/kernel/smp.c | 2 +- 4 files changed, 2 insertions(+), 63 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 186c4c214e0a..43080f4bbe4d 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1463,6 +1463,7 @@ config NR_CPUS config HOTPLUG_CPU bool "Support for hot-pluggable CPUs" depends on SMP + select GENERIC_IRQ_MIGRATION help Say Y here to experiment with turning CPUs off and on. CPUs can be controlled through /sys/devices/system/cpu. diff --git a/arch/arm/include/asm/irq.h b/arch/arm/include/asm/irq.h index e53638c8ed8a..61e1d089ce1a 100644 --- a/arch/arm/include/asm/irq.h +++ b/arch/arm/include/asm/irq.h @@ -24,7 +24,6 @@ #ifndef __ASSEMBLY__ struct irqaction; struct pt_regs; -extern void migrate_irqs(void); extern void asm_do_IRQ(unsigned int, struct pt_regs *); void handle_IRQ(unsigned int, struct pt_regs *); diff --git a/arch/arm/kernel/irq.c b/arch/arm/kernel/irq.c index ece04a457486..a7e047127c05 100644 --- a/arch/arm/kernel/irq.c +++ b/arch/arm/kernel/irq.c @@ -119,64 +119,3 @@ int __init arch_probe_nr_irqs(void) return nr_irqs; } #endif - -#ifdef CONFIG_HOTPLUG_CPU -static bool migrate_one_irq(struct irq_desc *desc) -{ - struct irq_data *d = irq_desc_get_irq_data(desc); - const struct cpumask *affinity = irq_data_get_affinity_mask(d); - struct irq_chip *c; - bool ret = false; - - /* - * If this is a per-CPU interrupt, or the affinity does not - * include this CPU, then we have nothing to do. - */ - if (irqd_is_per_cpu(d) || !cpumask_test_cpu(smp_processor_id(), affinity)) - return false; - - if (cpumask_any_and(affinity, cpu_online_mask) >= nr_cpu_ids) { - affinity = cpu_online_mask; - ret = true; - } - - c = irq_data_get_irq_chip(d); - if (!c->irq_set_affinity) - pr_debug("IRQ%u: unable to set affinity\n", d->irq); - else if (c->irq_set_affinity(d, affinity, false) == IRQ_SET_MASK_OK && ret) - cpumask_copy(irq_data_get_affinity_mask(d), affinity); - - return ret; -} - -/* - * The current CPU has been marked offline. Migrate IRQs off this CPU. - * If the affinity settings do not allow other CPUs, force them onto any - * available CPU. - * - * Note: we must iterate over all IRQs, whether they have an attached - * action structure or not, as we need to get chained interrupts too. - */ -void migrate_irqs(void) -{ - unsigned int i; - struct irq_desc *desc; - unsigned long flags; - - local_irq_save(flags); - - for_each_irq_desc(i, desc) { - bool affinity_broken; - - raw_spin_lock(&desc->lock); - affinity_broken = migrate_one_irq(desc); - raw_spin_unlock(&desc->lock); - - if (affinity_broken) - pr_warn_ratelimited("IRQ%u no longer affine to CPU%u\n", - i, smp_processor_id()); - } - - local_irq_restore(flags); -} -#endif /* CONFIG_HOTPLUG_CPU */ diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c index 7dd14e8395e6..d28a06fc7001 100644 --- a/arch/arm/kernel/smp.c +++ b/arch/arm/kernel/smp.c @@ -222,7 +222,7 @@ int __cpu_disable(void) /* * OK - migrate IRQs away from this CPU */ - migrate_irqs(); + irq_migrate_all_off_this_cpu(); /* * Flush user cache and TLB mappings, and then remove this CPU