mirror of https://gitee.com/openkylin/linux.git
ALSA: us122l: Fix pcm_usb_stream mmapping regression
The pcm_usb_stream plugin requires the mremap explicitly for the read buffer, as it expands itself once after reading the required size. But the commit [314e51b9: mm: kill vma flag VM_RESERVED and mm->reserved_vm counter] converted blindly to a combination of VM_DONTEXPAND | VM_DONTDUMP like other normal drivers, and this resulted in the failure of mremap(). For fixing this regression, we need to remove VM_DONTEXPAND for the read-buffer mmap. Reported-and-tested-by: James Miller <jamesstewartmiller@gmail.com> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
ccb041571b
commit
ac536a848a
|
@ -262,7 +262,9 @@ static int usb_stream_hwdep_mmap(struct snd_hwdep *hw,
|
|||
}
|
||||
|
||||
area->vm_ops = &usb_stream_hwdep_vm_ops;
|
||||
area->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP;
|
||||
area->vm_flags |= VM_DONTDUMP;
|
||||
if (!read)
|
||||
area->vm_flags |= VM_DONTEXPAND;
|
||||
area->vm_private_data = us122l;
|
||||
atomic_inc(&us122l->mmap_count);
|
||||
out:
|
||||
|
|
Loading…
Reference in New Issue