diff options
| author | Takashi Iwai <tiwai@suse.de> | 2026-08-06 17:32:22 +0200 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2026-09-07 17:18:22 +0200 |
| commit | 036e7aa793375ab16ea0f64b8de6673220416cc1 (patch) | |
| tree | b799716509174deb650b3563cc65b095e1d51e5f | |
| parent | 76b6bc38d0f310c0ae1b2a2ebabe2947d92c601a (diff) | |
| download | linux-stable-036e7aa793375ab16ea0f64b8de6673220416cc1.tar.gz linux-stable-036e7aa793375ab16ea0f64b8de6673220416cc1.zip | |
ALSA: mts64: Check card index validity at probe
commit d18a260720f86a5f8b5fcfefc4ba2e9dd01c10f8 upstream.
Although mts64 driver has a check of the given devptr->id value, it
doesn't check for a negative id, which is often given as "none" or
such value when bound via sysfs. This may lead to OOB access for
index[] and other parameters.
Add a sanity check for the card index and warn/correct it if it's a
value out of the range.
Cc: stable@vger.kernel.org
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Link: https://patch.msgid.link/20260806153227.1460166-6-tiwai@suse.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| -rw-r--r-- | sound/drivers/mts64.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sound/drivers/mts64.c b/sound/drivers/mts64.c index 6fc255a6754d..845e2fb65d6e 100644 --- a/sound/drivers/mts64.c +++ b/sound/drivers/mts64.c @@ -918,6 +918,12 @@ static int snd_mts64_probe(struct platform_device *pdev) p = platform_get_drvdata(pdev); platform_set_drvdata(pdev, NULL); + if (dev < 0) { + dev_warn(&pdev->dev, + "Invalid card index %d, using default 0\n", dev); + dev = 0; + } + if (dev >= SNDRV_CARDS) return -ENODEV; if (!enable[dev]) |
