Re: [PATCH] parisc: Switch from GENERIC_CPU_DEVICES to GENERIC_ARCH_TOPOLOGY

From: Helge Deller
Date: Fri Apr 01 2022 - 16:35:46 EST


Hi Günter,

* Guenter Roeck <linux@xxxxxxxxxxxx>:
> On 4/1/22 09:47, Helge Deller wrote:
> > Hi Günter,
> >
> > On 4/1/22 17:41, Guenter Roeck wrote:
> > > On Thu, Mar 24, 2022 at 07:46:50PM +0100, Helge Deller wrote:
> > > > Switch away from the own cpu topology code to common code which is used
> > > > by ARM64 and RISCV. That will allow us to enable CPU hotplug later on.
> > > >
> > > > Signed-off-by: Helge Deller <deller@xxxxxx>
> > >
> > > This patch results in the following traceback when
> > > booting generic-32bit_defconfig - SMP in qemu.
> >
> > That's strange, because I just built this generic-32bit_defconfig myself and
> > it boots up nicely in qemu for me. The only thing missing is CONFIG_CGROUPS=y so that
> > systemd can start.
> >
>
> Did you disable SMP (that is what - SMP was supposed to mean) ?
> Also, note that the system does boot fine, it just spits out the warning.

The patch below fixes the warning for me.
Could you try?

Helge


From: Helge Deller <deller@xxxxxx>
Subject: [PATCH] parisc: Re-enable GENERIC_CPU_DEVICES for !SMP

In commit 62773112acc5 ("parisc: Switch from GENERIC_CPU_DEVICES to
GENERIC_ARCH_TOPOLOGY") GENERIC_CPU_DEVICES was unconditionally turned
off, but this triggers a warning in topology_add_dev(). Turning it back
on for the !SMP case avoids this warning.

Reported-by: Guenter Roeck <linux@xxxxxxxxxxxx>
Fixes: 62773112acc5 ("parisc: Switch from GENERIC_CPU_DEVICES to GENERIC_ARCH_TOPOLOGY")
Signed-off-by: Helge Deller <deller@xxxxxx>

diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig
index 52e550b45692..bd22578859d0 100644
--- a/arch/parisc/Kconfig
+++ b/arch/parisc/Kconfig
@@ -38,6 +38,7 @@ config PARISC
select ARCH_HAVE_NMI_SAFE_CMPXCHG
select GENERIC_SMP_IDLE_THREAD
select GENERIC_ARCH_TOPOLOGY if SMP
+ select GENERIC_CPU_DEVICES if !SMP
select GENERIC_LIB_DEVMEM_IS_ALLOWED
select SYSCTL_ARCH_UNALIGN_ALLOW
select SYSCTL_EXCEPTION_TRACE