]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commitdiff
ALSA: vx222: fix null-ptr-deref
authorTong Zhang <ztong0001@gmail.com>
Tue, 7 Sep 2021 01:47:45 +0000 (18:47 -0700)
committerTakashi Iwai <tiwai@suse.de>
Tue, 7 Sep 2021 05:13:19 +0000 (07:13 +0200)
a recent refactor created a null pointer vx in snd_vx222_probe().
The vx pointer should have been populated in snd_vx222_create() as
suggested in earlier version, otherwise vx->core.ibl.size will throw an
error.

[    1.298398] BUG: kernel NULL pointer dereference, address: 00000000000001d8
[    1.316799] RIP: 0010:snd_vx222_probe+0x155/0x290 [snd_vx222]

Fixes: 3bde3359aa16 ("ALSA: vx222: Allocate resources with device-managed APIs")
Signed-off-by: Tong Zhang <ztong0001@gmail.com>
Link: https://lore.kernel.org/r/20210907014746.1445278-1-ztong0001@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/vx222/vx222.c

index f48cc20b9e8a1f132a4ea198c0861e19cc5acb6d..468a6a20dc1e8a5d77395d3ad60b4f2340406f4e 100644 (file)
@@ -137,6 +137,7 @@ static int snd_vx222_create(struct snd_card *card, struct pci_dev *pci,
        }
        chip->irq = pci->irq;
        card->sync_irq = chip->irq;
+       *rchip = vx;
 
        return 0;
 }