Hi, Thomas, On Tue, Feb 13, 2024 at 5:49 PM Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote: > > On Tue, Jan 30 2024 at 16:27, Bibo Mao wrote: > > During suspend and resume, CPUs except CPU0 can be hot-unpluged and IRQs > > will be migrated to CPU0. So it is not necessary to restore irq affinity > > for eiointc irq controller when system resumes. > > That's not the reason. The point is that eiointc_router_init() which is > invoked in the resume path affines all interrupts to CPU0, so the > restore operation is redundant, no? I'm sorry for the late response but I think this is a little wrong. When irq_migrate_all_off_this_cpu() is called at hot-unplug, if an irqdesc is irqd_affinity_is_managed() then its affinity is untouched (doesn't change to CPU0). Then after resume we should not keep its affinity on CPU0 set by eiointc_router_init() , but need to restore its old affinity. Huacai > > > This patch removes this piece of code about irq affinity restoring in > > function eiointc_resume(). > > Again. 'This patch' is pointless because we already know that this is a > patch, no? >