> From: Alex Bennée <[email protected]>
> Sent: Friday, September 29, 2023 3:27 PM
> To: Salil Mehta <[email protected]>
> Cc: [email protected]; [email protected]; [email protected]; jean-
> [email protected]; Jonathan Cameron <[email protected]>;
> [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> zhukeqian <[email protected]>; wangxiongfeng (C)
> <[email protected]>; wangyanan (Y) <[email protected]>;
> [email protected]; [email protected]; [email protected]; Linuxarm
> <[email protected]>
> Subject: Re: [PATCH 3/9] hw/acpi: Add ACPI CPU hotplug init stub
> 
> 
> Salil Mehta <[email protected]> writes:
> 
> > ACPI CPU hotplug related initialization should only happen if 
> > ACPI_CPU_HOTPLUG
> > support has been enabled for particular architecture. Add 
> > cpu_hotplug_hw_init()
> > stub to avoid compilation break.
> 
> When does the compilation break? It's usually ok to include stubs with
> that commit.


To be specific. it is not a compilation break but linking error.

Support of ACPI_CPU_HOTPLUG is optional. This flag is defined in architecture
specific Kconfig. Function cpu_hotplug_hw_init() is part of the hw/acpi/cpu.c
which gets compiled only when a particular architecture defines ACPI_CPU_HOTPLUG
flag. 

ACPI GED framework support for CPU Hotplug is not specific to any architecture.
acpi_ged_initfn() calls cpu_hotplug_hw_init() when GED device gets created.
This functions gets called irrespective of the fact CPU Hotplug is supported or
not. If ACPI_CPU_HOTPLUG is not enabled then presence of cpu_hotplug_hw_init()
will cause linking error without the presence of stub.


Thanks
Salil.

> > Signed-off-by: Salil Mehta <[email protected]>
> > ---
> >  hw/acpi/acpi-cpu-hotplug-stub.c | 6 ++++++
> >  1 file changed, 6 insertions(+)
> >
> > diff --git a/hw/acpi/acpi-cpu-hotplug-stub.c b/hw/acpi/acpi-cpu-hotplug-
> stub.c
> > index 3fc4b14c26..c6c61bb9cd 100644
> > --- a/hw/acpi/acpi-cpu-hotplug-stub.c
> > +++ b/hw/acpi/acpi-cpu-hotplug-stub.c
> > @@ -19,6 +19,12 @@ void legacy_acpi_cpu_hotplug_init(MemoryRegion
> *parent, Object *owner,
> >      return;
> >  }
> >
> > +void cpu_hotplug_hw_init(MemoryRegion *as, Object *owner,
> > +                         CPUHotplugState *state, hwaddr base_addr)
> > +{
> > +    return;
> > +}
> > +
> >  void acpi_cpu_ospm_status(CPUHotplugState *cpu_st, ACPIOSTInfoList
> ***list)
> >  {
> >      return;
> 
> 
> --
> Alex Bennée
> Virtualisation Tech Lead @ Linaro

Reply via email to