linux/drivers
Ilpo Järvinen 2bf95a9bcb serial: 8250: Fix 8250_rsa symbol loop
Depmod fails for a kernel made with:
  make allnoconfig
  echo -e "CONFIG_MODULES=y\nCONFIG_SERIAL_8250=m\nCONFIG_SERIAL_8250_EXTENDED=y\nCONFIG_SERIAL_8250_RSA=y" >> .config
  make olddefconfig

...due to a dependency loop:

  depmod: ERROR: Cycle detected: 8250 -> 8250_base -> 8250
  depmod: ERROR: Found 2 modules in dependency cycles!

This is caused by the move of 8250 RSA code from 8250_port.c (in
8250_base.ko) into 8250_rsa.c (in 8250.ko) by the commit 5a128fb475
("serial: 8250: move RSA functions to 8250_rsa.c"). The commit
b20d6576cd ("serial: 8250: export RSA functions") tried to fix a
missing symbol issue with EXPORTs but those then cause this dependency
cycle.

Break dependency loop by moving 8250_rsa.o from 8250.ko to 8250_base.ko
and by passing univ8250_port_base_ops to univ8250_rsa_support() that
can make a local copy of it.

Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Reported-by: Alex Davis <alex47794@gmail.com>
Fixes: 5a128fb475 ("serial: 8250: move RSA functions to 8250_rsa.c")
Fixes: b20d6576cd ("serial: 8250: export RSA functions")
Cc: stable <stable@kernel.org>
Link: https://lore.kernel.org/all/87frc3sd8d.fsf@posteo.net/
Link: https://lore.kernel.org/all/CADiockCvM6v+d+UoFZpJSMoLAdpy99_h-hJdzUsdfaWGn3W7-g@mail.gmail.com/
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Jiri Slaby <jirislaby@kernel.org>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Link: https://patch.msgid.link/20251110105043.4062-1-ilpo.jarvinen@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-11-26 13:16:53 +01:00
..
accel
accessibility
acpi RISC-V updates for v6.18-rc3 2025-10-25 09:35:26 -07:00
amba
android
ata
atm
auxdisplay
base
bcma
block block-6.18-20251023 2025-10-24 12:48:19 -07:00
bluetooth
bus
cache
cdrom
cdx
char
clk
clocksource
comedi
connector
counter
cpufreq
cpuidle
crypto
cxl
dax
dca
devfreq
dibs
dio
dma
dma-buf
dpll
edac
eisa
extcon
firewire firewire: init_ohci1394_dma: add missing function parameter documentation 2025-10-25 08:29:56 +09:00
firmware Arm SCMI fixes for v6.18 2025-10-23 22:30:01 +02:00
fpga
fsi
fwctl
gnss
gpio gpio: ljca: Fix duplicated IRQ mapping 2025-10-23 14:30:11 +02:00
gpu UAPI Changes: 2025-10-24 13:39:21 +02:00
greybus
hid
hsi
hte
hv
hwmon
hwspinlock
hwtracing
i2c
i3c
idle
iio
infiniband
input
interconnect
iommu
ipack
irqchip
isdn
leds
macintosh
mailbox
mcb
md
media
memory
memstick
message
mfd
misc Char/Misc driver fixes for 6.18-rc3 2025-10-26 10:33:46 -07:00
mmc
most
mtd
mux
net net/mlx5: Fix IPsec cleanup over MPV device 2025-10-23 07:14:33 -07:00
nfc
ntb
nubus
nvdimm
nvme
nvmem
of of/irq: Export of_msi_xlate() for module usage 2025-10-24 07:44:09 -05:00
opp
parisc
parport
pci pci-v6.18-fixes-3 2025-10-24 16:43:08 -07:00
pcmcia
peci
perf
phy
pinctrl
platform
pmdomain
pnp
power
powercap
pps
ps3
ptp ptp: ocp: Fix typo using index 1 instead of i in SMA initialization loop 2025-10-22 19:18:39 -07:00
pwm
rapidio
ras
regulator
remoteproc
reset
rpmsg
rtc
s390
sbus
scsi
sh
siox
slimbus
soc
soundwire
spi
spmi
ssb
staging
target
tc
tee
thermal
thunderbolt
tty serial: 8250: Fix 8250_rsa symbol loop 2025-11-26 13:16:53 +01:00
ufs
uio
usb USB serial device ids for 6.18-rc3 2025-10-24 13:52:58 +02:00
vdpa
vfio
vhost
video
virt
virtio
w1
watchdog
xen
zorro
Kconfig
Makefile