[PATCH] acpi: Fix header declaration of acpi_arch_dma_setup() w/o CONFIG_ACPI

Robin Murphy robin.murphy at arm.com
Thu Jun 1 03:31:27 PDT 2023


On 2023-06-01 02:48, Hanjun Guo wrote:
> Hi Dave,
> 
> Sorry for the late reply, I have some comments inline.
> 
> On 2023/5/23 0:06, Dave Jiang wrote:
>> arm64 build can be done without CONFIG_ACPI. The ifdef bits for
>> acpi_arch_dma_setup() is placed inside CONFIG_ACPI. When CONFIG_ACPI is
>> not set, this causes warning reported by kernel test bot. Move the
>> prototype declaration for acpi_arch_dma_setup() outside of CONFIG_ACPI.
> 
> ...
> 
>>
>>>> drivers/acpi/arm64/dma.c:7:6: warning: no previous prototype for 
>>>> function 'acpi_arch_dma_setup' [-Wmissing-prototypes]
>>     void acpi_arch_dma_setup(struct device *dev)
>>          ^
>>     drivers/acpi/arm64/dma.c:7:1: note: declare 'static' if the 
>> function is not intended to be used outside of this translation unit
>>     void acpi_arch_dma_setup(struct device *dev)
>>     ^
>>     static
>>     1 warning generated.
> 
> drivers/acpi can only be compiled with CONFIG_ACPI=y, so
> drivers/acpi/arm64/ will be the same, not sure how to trigger
> this compile warning.
> 
> I disable CONFIG_ACPI on my ARM64 machine, but didn't get the
> warning you reported.

Looking at the linked LKP report, it seems it's it's explicitly trying 
to build drivers/acpi/arm64/ despite the config:

         mkdir build_dir && cp config build_dir/.config
         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 
O=build_dir ARCH=arm64 olddefconfig
         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 
O=build_dir ARCH=arm64 SHELL=/bin/bash drivers/acpi/arm64/

So I guess it's a problem with the LKP setup? In general, trying to 
build arbitrary parts of the kernel which are configured out can never 
be expected to work.

Thanks,
Robin.



More information about the linux-arm-kernel mailing list