]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ALSA: isa: Mark '*_registered' variables as __ro_after_init
authorLen Bao <len.bao@gmx.us>
Sun, 24 May 2026 15:40:49 +0000 (15:40 +0000)
committerTakashi Iwai <tiwai@suse.de>
Mon, 25 May 2026 07:31:31 +0000 (09:31 +0200)
The '*_registered' variables are initialized only during the init
phase in the '__init' functions and never changed. So, mark them as
__ro_after_init to reduce the attack surface.

Signed-off-by: Len Bao <len.bao@gmx.us>
Link: https://patch.msgid.link/20260524154051.45258-1-len.bao@gmx.us
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/isa/cmi8330.c
sound/isa/cs423x/cs4236.c
sound/isa/es18xx.c
sound/isa/gus/interwave.c
sound/isa/msnd/msnd_pinnacle.c
sound/isa/opl3sa2.c
sound/isa/sb/sb16.c
sound/isa/sscape.c
sound/isa/wavefront/wavefront.c

index 3d1f19321b9e97011e532a6e6167813212157a6b..ecff521957cb34a85fc3d5283d4ce8e409389641 100644 (file)
@@ -103,8 +103,8 @@ MODULE_PARM_DESC(mpuport, "MPU-401 port # for CMI8330/CMI8329 driver.");
 module_param_hw_array(mpuirq, int, irq, NULL, 0444);
 MODULE_PARM_DESC(mpuirq, "IRQ # for CMI8330/CMI8329 MPU-401 port.");
 #ifdef CONFIG_PNP
-static int isa_registered;
-static int pnp_registered;
+static int isa_registered __ro_after_init;
+static int pnp_registered __ro_after_init;
 #endif
 
 #define CMI8330_RMUX3D    16
index e36cc147651a4510a847ffd886bbc735ec9a81b8..238065ffa1d261412675a419bfd0a9d19d2018fd 100644 (file)
@@ -69,9 +69,9 @@ module_param_hw_array(dma2, int, dma, NULL, 0444);
 MODULE_PARM_DESC(dma2, "DMA2 # for " IDENT " driver.");
 
 #ifdef CONFIG_PNP
-static int isa_registered;
-static int pnpc_registered;
-static int pnp_registered;
+static int isa_registered __ro_after_init;
+static int pnpc_registered __ro_after_init;
+static int pnp_registered __ro_after_init;
 #endif /* CONFIG_PNP */
 
 struct snd_card_cs4236 {
index 1da7b400a17b6a2bba63b698120172ece76a11cd..df88d91e0fb200d1330a2eb33afea358146f6f35 100644 (file)
@@ -1924,9 +1924,9 @@ module_param_hw_array(dma2, int, dma, NULL, 0444);
 MODULE_PARM_DESC(dma2, "DMA 2 # for ES18xx driver.");
 
 #ifdef CONFIG_PNP
-static int isa_registered;
-static int pnp_registered;
-static int pnpc_registered;
+static int isa_registered __ro_after_init;
+static int pnp_registered __ro_after_init;
+static int pnpc_registered __ro_after_init;
 
 static const struct pnp_device_id snd_audiodrive_pnpbiosids[] = {
        { .id = "ESS1869" },
index 6c3a2977dcb3f1c57fdfd052315b112f7339093a..115f900fa06382d46ba3b11ec2692f63000593c5 100644 (file)
@@ -111,8 +111,8 @@ struct snd_interwave {
 
 
 #ifdef CONFIG_PNP
-static int isa_registered;
-static int pnp_registered;
+static int isa_registered __ro_after_init;
+static int pnp_registered __ro_after_init;
 
 static const struct pnp_card_device_id snd_interwave_pnpids[] = {
 #ifndef SNDRV_STB
index 5b729bb02ef6287a4d7d17c557cbec577761e4db..0d5f4461a7bc8989d9c5b4a49ae80735962a5315 100644 (file)
@@ -1199,8 +1199,8 @@ static int snd_msnd_pnp_resume(struct pnp_card_link *pcard)
 }
 #endif
 
-static int isa_registered;
-static int pnp_registered;
+static int isa_registered __ro_after_init;
+static int pnp_registered __ro_after_init;
 
 static const struct pnp_card_device_id msnd_pnpids[] = {
        /* Pinnacle PnP */
index 8c1767697b62571fc9594656145594c4f75f34c8..88eada933a1f9fc77949e9c5cfec5b8b4b2daed3 100644 (file)
@@ -69,9 +69,9 @@ module_param_array(opl3sa3_ymode, int, NULL, 0444);
 MODULE_PARM_DESC(opl3sa3_ymode, "Speaker size selection for 3D Enhancement mode: Desktop/Large Notebook/Small Notebook/HiFi.");
 
 #ifdef CONFIG_PNP
-static int isa_registered;
-static int pnp_registered;
-static int pnpc_registered;
+static int isa_registered __ro_after_init;
+static int pnp_registered __ro_after_init;
+static int pnpc_registered __ro_after_init;
 #endif
 
 /* control ports */
index 208d1942a015a722f818caf557773c14464b4699..866d7f5c58a01935804fdabfee94a491fc8caf61 100644 (file)
@@ -99,8 +99,8 @@ MODULE_PARM_DESC(seq_ports, "Number of sequencer ports for WaveTable synth.");
 #endif
 
 #ifdef CONFIG_PNP
-static int isa_registered;
-static int pnp_registered;
+static int isa_registered __ro_after_init;
+static int pnp_registered __ro_after_init;
 #endif
 
 struct snd_card_sb16 {
index 553ceb92d2989ab9658991f99fe16e940cc6ba0e..ce8a59650e383b03aad8d9f22b003e47abe89868 100644 (file)
@@ -71,8 +71,8 @@ module_param_array(joystick, bool, NULL, 0444);
 MODULE_PARM_DESC(joystick, "Enable gameport.");
 
 #ifdef CONFIG_PNP
-static int isa_registered;
-static int pnp_registered;
+static int isa_registered __ro_after_init;
+static int pnp_registered __ro_after_init;
 
 static const struct pnp_card_device_id sscape_pnpids[] = {
        { .id = "ENS3081", .devs = { { "ENS0000" } } }, /* Soundscape PnP */
index f4a0c21c905e99797e893abc3fb4d0c5ebc96df1..5b1917cc19ce4dbcb4027b54caba1c6c242ba573 100644 (file)
@@ -71,8 +71,8 @@ module_param_array(use_cs4232_midi, bool, NULL, 0444);
 MODULE_PARM_DESC(use_cs4232_midi, "Use CS4232 MPU-401 interface (inaccessibly located inside your computer)");
 
 #ifdef CONFIG_PNP
-static int isa_registered;
-static int pnp_registered;
+static int isa_registered __ro_after_init;
+static int pnp_registered __ro_after_init;
 
 static const struct pnp_card_device_id snd_wavefront_pnpids[] = {
        /* Tropez */