Subject: Re: linux-next: Tree for Jun 2 (arch/powerpc/kernel/iommu.c)

From: Michael Ellerman <[email-masked]>
Date: Sun, 04 Jun 2023 10:22:51 +1000

Randy Dunlap <[email-masked]> writes:
> On 6/1/23 21:01, Stephen Rothwell wrote:
>> Hi all,
>> 
>> Changes since 20230601:
>> 
>
> On powerpc64, a randconfig failed with:
>
> In file included from ../include/linux/list.h:5,
>                  from ../include/linux/preempt.h:11,
>                  from ../include/linux/spinlock.h:56,
>                  from ../include/linux/mmzone.h:8,
>                  from ../include/linux/gfp.h:7,
>                  from ../include/linux/slab.h:15,
>                  from ../arch/powerpc/kernel/iommu.c:15:
> ../arch/powerpc/kernel/iommu.c: In function 'spapr_tce_setup_phb_iommus_initcall':
> ../arch/powerpc/kernel/iommu.c:1391:36: error: 'hose_list' undeclared (first use in this function); did you mean 'zonelist'?
>  1391 |         list_for_each_entry(hose, &hose_list, list_node) {
>       |                                    ^~~~~~~~~
...

hose_list is in pci-common.c which is built when PCI=y.

PSERIES and POWERNV force PCI=y.

But this config has neither:

# CONFIG_PPC_POWERNV is not set
# CONFIG_PPC_PSERIES is not set
CONFIG_HAVE_PCI=y
# CONFIG_PCI is not set
# CONFIG_COMMON_CLK_RS9_PCIE is not set

Probably the spapr_tce code should be wrapped in an #ifdef that is only
enabled when POWERNV || PSERIES is enabled.

cheers