[PATCH v7 11/16] irqchip/gic-v3: Add support for ACPI's disabled but 'online capable' CPUs

Jonathan Cameron Jonathan.Cameron at Huawei.com
Wed Apr 24 10:08:30 PDT 2024


On Wed, 24 Apr 2024 17:35:54 +0100
Salil Mehta <salil.mehta at huawei.com> wrote:

> >  From: Marc Zyngier <maz at kernel.org>
> >  Sent: Wednesday, April 24, 2024 4:33 PM
> >  To: Jonathan Cameron <jonathan.cameron at huawei.com>
> >  Cc: Thomas Gleixner <tglx at linutronix.de>; Peter Zijlstra
> >  <peterz at infradead.org>; linux-pm at vger.kernel.org;
> >  loongarch at lists.linux.dev; linux-acpi at vger.kernel.org; linux-
> >  arch at vger.kernel.org; linux-kernel at vger.kernel.org; linux-arm-
> >  kernel at lists.infradead.org; kvmarm at lists.linux.dev; x86 at kernel.org;
> >  Russell King <linux at armlinux.org.uk>; Rafael J . Wysocki
> >  <rafael at kernel.org>; Miguel Luis <miguel.luis at oracle.com>; James Morse
> >  <james.morse at arm.com>; Salil Mehta <salil.mehta at huawei.com>; Jean-
> >  Philippe Brucker <jean-philippe at linaro.org>; Catalin Marinas
> >  <catalin.marinas at arm.com>; Will Deacon <will at kernel.org>; Linuxarm
> >  <linuxarm at huawei.com>; Ingo Molnar <mingo at redhat.com>; Borislav
> >  Petkov <bp at alien8.de>; Dave Hansen <dave.hansen at linux.intel.com>;
> >  justin.he at arm.com; jianyong.wu at arm.com
> >  Subject: Re: [PATCH v7 11/16] irqchip/gic-v3: Add support for ACPI's
> >  disabled but 'online capable' CPUs
> >  
> >  On Wed, 24 Apr 2024 13:54:38 +0100,
> >  Jonathan Cameron <Jonathan.Cameron at huawei.com> wrote:  
> >  >
> >  > On Tue, 23 Apr 2024 13:01:21 +0100
> >  > Marc Zyngier <maz at kernel.org> wrote:
> >  >  
> >  > > On Mon, 22 Apr 2024 11:40:20 +0100,
> >  > > Jonathan Cameron <Jonathan.Cameron at Huawei.com> wrote:  
> >  > > >
> >  > > > On Thu, 18 Apr 2024 14:54:07 +0100 Jonathan Cameron
> >  > > > <Jonathan.Cameron at huawei.com> wrote:  
> >  
> >  [...]
> >    
> >  > > >  
> >  > > > > +	/*
> >  > > > > +	 * Capable but disabled CPUs can be brought online later.  What about
> >  > > > > +	 * the redistributor? ACPI doesn't want to say!
> >  > > > > +	 * Virtual hotplug systems can use the MADT's "always-on"  GICR entries.
> >  > > > > +	 * Otherwise, prevent such CPUs from being brought online.
> >  > > > > +	 */
> >  > > > > +	if (!(gicc->flags & ACPI_MADT_ENABLED)) {
> >  > > > > +		pr_warn_once("CPU %u's redistributor is  inaccessible: this CPU can't be brought online\n", cpu);
> >  > > > > +		set_cpu_present(cpu, false);
> >  > > > > +		set_cpu_possible(cpu, false);  
> 
> (a digression) shouldn't we be clearing the enabled mask as well?
> 
>                                           set_cpu_enabled(cpu, false);

FWIW I think not necessary. enabled is only set in register_cpu() and aim here is to
never call that for CPUs in this state.

Anyhow, I got distracted by the firmware bug I found whilst trying to test this but
now have a test setup that hits this path (once deliberately broken), so will
see what we can do about that doesn't have affect those masks.

Jonathan


> 
> 
> Best regards
> Salil




More information about the linux-arm-kernel mailing list