diff options
author | Takashi Iwai <tiwai@suse.de> | 2022-09-26 16:55:49 +0300 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2022-09-27 09:46:03 +0300 |
commit | 1be2143fb7b19e247f7c4aa1097f85fe92c132bf (patch) | |
tree | 8bc9710c8bed62d1015e1f375d74d6fb421dbb60 | |
parent | f0061c18c169f0c32d96b59485c3edee85e343ed (diff) | |
download | linux-1be2143fb7b19e247f7c4aa1097f85fe92c132bf.tar.xz |
ALSA: pcm: Make mmap status read-only
The mmap status record should be read-only. Modifying it from
user-space may screw up things unexpectedly, so let's clear the write
bits at exposing it.
Note that alsa-lib and other known user-space apps access the mmapped
status only as read-only, hence this change shouldn't break the
existing applications.
Reviewed-by: Jaroslav Kysela <perex@perex.cz>
Link: https://lore.kernel.org/r/20220926135558.26580-3-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r-- | sound/core/pcm_native.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/core/pcm_native.c b/sound/core/pcm_native.c index d9485b1ab719..33769ca78cc8 100644 --- a/sound/core/pcm_native.c +++ b/sound/core/pcm_native.c @@ -3668,6 +3668,7 @@ static int snd_pcm_mmap_status(struct snd_pcm_substream *substream, struct file area->vm_ops = &snd_pcm_vm_ops_status; area->vm_private_data = substream; area->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP; + area->vm_flags &= ~(VM_WRITE | VM_MAYWRITE); return 0; } |