Re: [PATCH] x86/topology: Add missing declarations and attribute dependencies

From: Ricardo Neri

Date: Thu Jan 15 2026 - 18:37:25 EST


On Mon, Nov 17, 2025 at 08:50:50PM -0800, Ricardo Neri wrote:
> The prototypes for get_topology_cpu_type_name() and
> get_topology_cpu_type() take a pointer to struct cpuinfo_x86, but
> asm/topology.h does not include nor forward-declares the structure. A
> translation unit that includes asm/topology.h, directly or indirectly,
> without including asm/processor.h triggers a warning:
>
> ./arch/x86/include/asm/topology.h:159:47: error: ‘struct cpuinfo_x86’
> declared inside parameter list will not be visible outside of this
> definition or declaration [-Werror]
> 159 | const char *get_topology_cpu_type_name(struct cpuinfo_x86 *c);
> | ^~~~~~~~~~~
>
> Since only a pointer is needed and no structure members are accessed,
> add a forward declaration of struct cpuinfo_x86.
>
> Similarly, sysctl_sched_itmt_enabled is declared in asm/topology.h with
> the __read_mostly attribute, but the header does not include linux/cache.h.
> This causes a build failure when a file includes asm/topology.h without
> including linux/cache.h:
>
> ./arch/x86/include/asm/topology.h:264:27: error: expected ‘=’, ‘,’,
> ‘;’, ‘asm’ or ‘__attribute__’ before ‘sysctl_sched_itmt_enabled’
> 264 | extern bool __read_mostly sysctl_sched_itmt_enabled;
> | ^~~~~~~~~~~~~~~~~~~~~~~~~
>
> Include the needed header.
>
> Signed-off-by: Ricardo Neri <ricardo.neri-calderon@xxxxxxxxxxxxxxx>
> ---
> I found this issue while working on a patchset for Hyper-V support [1]. In
> that case, the file arch/x86/hyperv/hv_vtl.c would now include asm/acpi.h,
> which implicitly includes asm/topology.h but not asm/processor.h nor linux/
> cache.h.
>
> [1]. https://lore.kernel.org/r/20251117-rneri-wakeup-mailbox-v7-0-4a8b82ab7c2c@xxxxxxxxxxxxxxx

Hi,

I incorporated this patch in a new version of my patchset to use the ACPI
mailbox with Device-Tree based firmware. It can be found here:

https://lore.kernel.org/r/20260107-rneri-wakeup-mailbox-v8-0-2f5b6785f2f5@xxxxxxxxxxxxxxx

Thanks and BR,
Ricardo