ALSA: PCM: Fix NULL dereference at mmap checks
commit8e537d5dec
upstream. The recent refactoring of mmap handling caused Oops on some devices that don't use the standard memory allocations. This patch addresses it by allowing snd_dma_buffer_mmap() helper to receive the NULL pointer dmab argument (and return an error appropriately). Fixes:a202bd1ad8
("ALSA: core: Move mmap handler into memalloc ops") Cc: <stable@vger.kernel.org> Link: https://lore.kernel.org/r/20211107163911.13534-1-tiwai@suse.de Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
b9d4a89935
Коммит
47047ae0b7
|
@ -176,8 +176,11 @@ EXPORT_SYMBOL_GPL(snd_devm_alloc_pages);
|
|||
int snd_dma_buffer_mmap(struct snd_dma_buffer *dmab,
|
||||
struct vm_area_struct *area)
|
||||
{
|
||||
const struct snd_malloc_ops *ops = snd_dma_get_ops(dmab);
|
||||
const struct snd_malloc_ops *ops;
|
||||
|
||||
if (!dmab)
|
||||
return -ENOENT;
|
||||
ops = snd_dma_get_ops(dmab);
|
||||
if (ops && ops->mmap)
|
||||
return ops->mmap(dmab, area);
|
||||
else
|
||||
|
|
Загрузка…
Ссылка в новой задаче