ALSA: intel8x0: Fix missing check in snd_intel8x0m_create
When device_type == DEVICE_ALI, we should also check the return value of pci_iomap() to avoid potential null pointer dereference. Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn> Link: https://lore.kernel.org/r/20210131100916.7915-1-dinghao.liu@zju.edu.cn Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
0417fadab4
commit
0074946932
|
@ -1129,13 +1129,14 @@ static int snd_intel8x0m_create(struct snd_card *card,
|
||||||
chip->bmaddr = pci_iomap(pci, 3, 0);
|
chip->bmaddr = pci_iomap(pci, 3, 0);
|
||||||
else
|
else
|
||||||
chip->bmaddr = pci_iomap(pci, 1, 0);
|
chip->bmaddr = pci_iomap(pci, 1, 0);
|
||||||
|
|
||||||
|
port_inited:
|
||||||
if (!chip->bmaddr) {
|
if (!chip->bmaddr) {
|
||||||
dev_err(card->dev, "Controller space ioremap problem\n");
|
dev_err(card->dev, "Controller space ioremap problem\n");
|
||||||
snd_intel8x0m_free(chip);
|
snd_intel8x0m_free(chip);
|
||||||
return -EIO;
|
return -EIO;
|
||||||
}
|
}
|
||||||
|
|
||||||
port_inited:
|
|
||||||
/* initialize offsets */
|
/* initialize offsets */
|
||||||
chip->bdbars_count = 2;
|
chip->bdbars_count = 2;
|
||||||
tbl = intel_regs;
|
tbl = intel_regs;
|
||||||
|
|
Loading…
Reference in New Issue