[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YMuRcrE8xlWnFSWW@google.com>
Date: Thu, 17 Jun 2021 11:16:18 -0700
From: Matthias Kaehlcke <mka@...omium.org>
To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Masahiro Yamada <masahiroy@...nel.org>
Cc: Naresh Kamboju <naresh.kamboju@...aro.org>,
Linux-Next Mailing List <linux-next@...r.kernel.org>,
open list <linux-kernel@...r.kernel.org>,
linux-usb@...r.kernel.or, lkft-triage@...ts.linaro.org,
Stephen Rothwell <sfr@...b.auug.org.au>,
linux-kbuild@...r.kernel.org
Subject: Re: [next] [arm64] allmodconfig build failed - xhci-plat.c:427:
undefined reference to `onboard_hub_destroy_pdevs'
On Thu, Jun 17, 2021 at 03:45:57PM +0200, Greg Kroah-Hartman wrote:
> On Thu, Jun 17, 2021 at 07:09:15PM +0530, Naresh Kamboju wrote:
> > The arm64 allmodconfig build failed on Linux next 20210617 tag due to
> > the commit,
> >
> > c950686b382d ("usb: host: xhci-plat: Create platform device for
> > onboard hubs in probe()")
> >
> > build error:
> > ------------
> > aarch64-linux-gnu-ld: drivers/usb/host/xhci-plat.o: in function
> > `xhci_plat_remove':
> > drivers/usb/host/xhci-plat.c:427: undefined reference to
> > `onboard_hub_destroy_pdevs'
> > drivers/usb/host/xhci-plat.c:427:(.text+0x82c): relocation truncated
> > to fit: R_AARCH64_CALL26 against undefined symbol
> > `onboard_hub_destroy_pdevs'
> > aarch64-linux-gnu-ld: drivers/usb/host/xhci-plat.o: in function
> > `xhci_plat_probe':
> > drivers/usb/host/xhci-plat.c:379: undefined reference to
> > `onboard_hub_create_pdevs'
> > drivers/usb/host/xhci-plat.c:379:(.text+0x131c): relocation truncated
> > to fit: R_AARCH64_CALL26 against undefined symbol
> > `onboard_hub_create_pdevs'
> > make[1]: *** [Makefile:1252: vmlinux] Error 1
> > make[1]: Target '__all' not remade because of errors.
> > make: *** [Makefile:222: __sub-make] Error 2
> > make: Target '__all' not remade because of errors.
>
> Matthias, this is due to your patch, yet-another config option mis-match
> somewhere. Can you please fix it up?
I can repro this with:
make -j 16 ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- \
KCONFIG_ALLCONFIG=arch/arm64/configs/defconfig allmodconfig kernel modules
This results in:
CONFIG_USB_XHCI_PLATFORM=y
CONFIG_USB_ONBOARD_HUB=m
The following Kconfig dependency was supposed to prevent this scenario:
config USB_XHCI_PLATFORM
depends on USB_ONBOARD_HUB || !USB_ONBOARD_HUB
But apparently this isn't the case.
With the above allmodconfig command the following warning is emitted:
WARNING: unmet direct dependencies detected for USB_XHCI_PLATFORM
Depends on [m]: USB_SUPPORT [=y] && USB [=y] && USB_XHCI_HCD [=y] && (USB_ONBOARD_HUB [=m] || !USB_ONBOARD_HUB [=m])
I read through kconfig-language.rst multiple times, but it's still not
clear to me how to specify this dependency properly.
Masahiro/Greg, do you have any pointers?
Powered by blists - more mailing lists