diff --git a/dsp/adsprpc.c b/dsp/adsprpc.c index ed8419cf77..50d9e83629 100644 --- a/dsp/adsprpc.c +++ b/dsp/adsprpc.c @@ -852,7 +852,10 @@ static int fastrpc_mmap_find(struct fastrpc_file *fl, int fd, if ((va + len) < va) return -EFAULT; - if (mflags == ADSP_MMAP_DMA_BUFFER) { + if ((mflags == ADSP_MMAP_HEAP_ADDR) || + (mflags == ADSP_MMAP_REMOTE_HEAP_ADDR)) { + return -EFAULT; + } else if (mflags == ADSP_MMAP_DMA_BUFFER) { hlist_for_each_entry_safe(map, n, &fl->maps, hn) { if (map->buf == buf) { if (refs) {