[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <9997bc22-239b-ccc5-e7d4-a179144fdde3@intel.com>
Date: Thu, 1 Jun 2023 08:24:43 -0700
From: Dave Jiang <dave.jiang@...el.com>
To: Robin Murphy <robin.murphy@....com>,
Hanjun Guo <guohanjun@...wei.com>, <lpieralisi@...nel.org>,
<sudeep.holla@....com>
CC: kernel test robot <lkp@...el.com>,
Jianmin Lv <lvjianmin@...ngson.cn>,
"Rafael J. Wysocki" <rafael.j.wysocki@...el.com>,
<rafael@...nel.org>, <lenb@...nel.org>,
<linux-acpi@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] acpi: Fix header declaration of acpi_arch_dma_setup() w/o
CONFIG_ACPI
On 6/1/23 03:31, Robin Murphy wrote:
> 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.
It seems to be a problem triggered because I was working on some patches
that added obj-y at the drivers/Makefile for acpi/ and opened the ACPI
dir for !CONFIG_ACPI compile. The code has been reworked after comments
from Rafael. So this is no longer a problem. Please ignore patch. Sorry
about the noise.
>
> Thanks,
> Robin.
Powered by blists - more mailing lists