summaryrefslogtreecommitdiff
path: root/drivers/tty/serial
diff options
context:
space:
mode:
authorDanish Khateeb <danishkhateeb03@gmail.com>2026-09-26 11:35:06 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2026-10-01 11:11:04 +0200
commitc44a4925cdac02af781ebfae96df68a7bf3580b0 (patch)
treecc1bb4bba64870ab7f23a0557328f55624f00f59 /drivers/tty/serial
parentb290393074a149ed2f45da6759c94719c06b48c4 (diff)
serial: 8250: Fix section mismatch with CONFIG_MODULES=n
Without CONFIG_MODULES, __init_or_module means __init, so serial8250_pnp_exit() and serial8250_hub6_exit() end up in .init.text. They are also called from serial8250_exit(), which is __exit, and modpost warns: WARNING: modpost: vmlinux: section mismatch in reference: serial8250_exit+0x2a (section: .exit.text) -> serial8250_pnp_exit (section: .init.text) The exit code never runs in such a kernel, so nothing breaks at runtime. But a function that is called from both __init and __exit code can't carry either annotation, so drop it. Fixes: a300273c458c ("serial: 8250: hub6: Add cleanup code") Fixes: 4cf187f9dea9 ("serial: 8250: pnp: Annotate init and exit functions for conditional discarding") Assisted-by: LLM Signed-off-by: Danish Khateeb <danishkhateeb03@gmail.com> Link: https://patch.msgid.link/20260926163506.487201-1-danishkhateeb03@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/serial')
-rw-r--r--drivers/tty/serial/8250/8250_hub6.c2
-rw-r--r--drivers/tty/serial/8250/8250_pnp.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/drivers/tty/serial/8250/8250_hub6.c b/drivers/tty/serial/8250/8250_hub6.c
index 4d4c54c951cb..848d9723ac56 100644
--- a/drivers/tty/serial/8250/8250_hub6.c
+++ b/drivers/tty/serial/8250/8250_hub6.c
@@ -54,7 +54,7 @@ int __init serial8250_hub6_init(void)
return platform_device_register(&hub6_device);
}
-void __init_or_module serial8250_hub6_exit(void)
+void serial8250_hub6_exit(void)
{
platform_device_unregister(&hub6_device);
}
diff --git a/drivers/tty/serial/8250/8250_pnp.c b/drivers/tty/serial/8250/8250_pnp.c
index 7decf62400ab..a6257cd6e246 100644
--- a/drivers/tty/serial/8250/8250_pnp.c
+++ b/drivers/tty/serial/8250/8250_pnp.c
@@ -531,7 +531,7 @@ int __init serial8250_pnp_init(void)
return pnp_register_driver(&serial_pnp_driver);
}
-void __init_or_module serial8250_pnp_exit(void)
+void serial8250_pnp_exit(void)
{
pnp_unregister_driver(&serial_pnp_driver);
}