On Tuesday, October 15, 2019 1:16:50 AM CEST Stephen Rothwell wrote: > > --Sig_/6GS1h5au_w04qPbsgg/ztsa > Content-Type: text/plain; charset=US-ASCII > Content-Transfer-Encoding: quoted-printable > > Hi all, > > On Tue, 15 Oct 2019 10:08:55 +1100 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> = > wrote: > > > > After merging the pm tree, today's linux-next build (arm > > multi_v7_defconfig) produced this warning: > >=20 > > In file included from include/linux/irqchip.h:14, > > from arch/arm/kernel/irq.c:26: > > include/linux/acpi.h:682:31: warning: 'struct acpi_device' declared insid= > e parameter list will not be visible outside of this definition or declarat= > ion > > 682 | acpi_dev_hid_uid_match(struct acpi_device *adev, const char *hid2= > , const char *uid2) > > | ^~~~~~~~~~~ > >=20 > > and many more. > >=20 > > Introduced by commit > >=20 > > d1748b57dc88 ("ACPI / utils: Introduce acpi_dev_hid_uid_match() helper") > >=20 > > CONFIG_ACPI is not set for this build. > > This became a build failure for the powerpc ppc64_allmodconfig build: > > In file included from include/linux/i2c.h:13, > from arch/powerpc/platforms/pasemi/misc.c:14: > include/linux/acpi.h:682:31: error: 'struct acpi_device' declared inside pa= > rameter list will not be visible outside of this definition or declaration = > [-Werror] > 682 | acpi_dev_hid_uid_match(struct acpi_device *adev, const char *hid2, = > const char *uid2) > | ^~~~~~~~~~~ > cc1: all warnings being treated as errors > > (and many more) > > I have used the pm tree from next-20191014 for today. So this looks weird, because there is an acpi_dev_put() stub in include/linux/acpi.h too in the same #else block and it takes a (struct acpi_device *) pointer too and it has not been touched by the commit in question. So why has it built successfully so far? Also I wonder why 0-day didn't warn about that commit. Anyway, I've added an extra declaration of struct acpi_device to the #else block in question to suppress the warning(s).