On 2015/10/22 17:26, Russell King - ARM Linux wrote:
On Wed, Oct 21, 2015 at 09:29:08PM +0100, Russell King - ARM Linux wrote:
On Wed, Oct 21, 2015 at 01:47:49PM +0200, Geert Uytterhoeven wrote:
On Thu, Sep 24, 2015 at 11:32 AM, Yang Yingliang
<[email protected]> wrote:
When cpu is disabled, all irqs will be migratged to another cpu.
In some cases, a new affinity is different, the old affinity need
to be updated and if irq_set_affinity's return value is IRQ_SET_MASK_OK_DONE,
the old affinity can not be updated. Fix it by using irq_do_set_affinity.
And migrating interrupts is a core code matter, so use the generic
function irq_migrate_all_off_this_cpu() to migrate interrupts in
kernel/irq/migration.c.
Cc: Jiang Liu <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Marc Zyngier <[email protected]>
Cc: Mark Rutland <[email protected]>
Cc: Will Deacon <[email protected]>
Cc: Russell King - ARM Linux <[email protected]>
Cc: Hanjun Guo <[email protected]>
Signed-off-by: Yang Yingliang <[email protected]>
---
arch/arm/Kconfig | 1 +
arch/arm/include/asm/irq.h | 1 -
arch/arm/kernel/irq.c | 62 ----------------------------------------------
arch/arm/kernel/smp.c | 2 +-
4 files changed, 2 insertions(+), 64 deletions(-)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 72ad724..bffba78 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1492,6 +1492,7 @@ config NR_CPUS
config HOTPLUG_CPU
bool "Support for hot-pluggable CPUs"
depends on SMP
+ select GENERIC_IRQ_MIGRATION
This causes the following warnings during s2ram on r8a7791/koelsch
(dual-core CA15):
Thanks for the report. I'll see what tonight's boot run says for my
platforms. Hopefully, the author of these changes can help debug
this.
What's happened is that:
- c = irq_data_get_irq_chip(d);
- if (!c->irq_set_affinity)
- pr_debug("IRQ%u: unable to set affinity\n", d->irq);
has become:
+ c = irq_data_get_irq_chip(d);
+ if (!c->irq_set_affinity) {
+ pr_warn_ratelimited("IRQ%u: unable to set affinity\n", d->irq);
which makes things more noisy.
This is a change that was not described in the commit message for the
patch Thomas merged.
I described it in v2 cover letter and kept the change history in v6
cover letter. There is no comment on the change when patch the was
reviewing in v2, so I thought it's ok and I kept the change in the
next versions.
Need I send a patch to the Thomas branch to revert the change ?
Thanks,
Yang
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/