On 04/09/2017 09:53 AM, Chen Yu wrote: > This is an optimization to bypass the free vector checking if the current > CPU has no irq to migrate. This can especially speed up the CPU offline > process when there are many CPUs in the system.
Chen, OOC how much time does this save? P. > > Cc: Thomas Gleixner <[email protected]> > Cc: Ingo Molnar <[email protected]> > Cc: "H. Peter Anvin" <[email protected]> > Cc: Prarit Bhargava <[email protected]> > Cc: "Rafael J. Wysocki" <[email protected]> > Cc: Len Brown <[email protected]> > Cc: [email protected] > Cc: [email protected] > Signed-off-by: Chen Yu <[email protected]> > --- > arch/x86/kernel/irq.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/arch/x86/kernel/irq.c b/arch/x86/kernel/irq.c > index 4d8183b..b9bdc1e 100644 > --- a/arch/x86/kernel/irq.c > +++ b/arch/x86/kernel/irq.c > @@ -394,6 +394,9 @@ int check_irq_vectors_for_cpu_disable(void) > !cpumask_subset(&affinity_new, &online_new)) > this_count++; > } > + /* No need to check any further. */ > + if (!this_count) > + return 0; > > count = 0; > for_each_online_cpu(cpu) { >

