Re: [PATCH] [5.8 regression] net: ks8851: fix link error

From: Marek Vasut
Date: Tue Jan 26 2021 - 01:56:49 EST


On 1/25/21 1:19 PM, Arnd Bergmann wrote:
From: Arnd Bergmann <arnd@xxxxxxxx>

An object file cannot be built for both loadable module and built-in
use at the same time:

arm-linux-gnueabi-ld: drivers/net/ethernet/micrel/ks8851_common.o: in function `ks8851_probe_common':
ks8851_common.c:(.text+0xf80): undefined reference to `__this_module'

Change the ks8851_common code to be a standalone module instead,
and use Makefile logic to ensure this is built-in if at least one
of its two users is.

Fixes: 797047f875b5 ("net: ks8851: Implement Parallel bus operations")
Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
---
Marek sent two other patches to address the problem:
https://lore.kernel.org/netdev/20210116164828.40545-1-marex@xxxxxxx/
https://lore.kernel.org/netdev/20210115134239.126152-1-marex@xxxxxxx/

My version is what I applied locally to my randconfig tree, and
I think this is the cleanest solution.

If this version works for all the configuration combinations, then that's perfect, thanks.