diff options
author | Hans Verkuil | 2022-12-07 13:04:34 +0000 |
---|---|---|
committer | Linus Torvalds | 2022-12-07 11:25:40 -0800 |
commit | 098e5edc5d048a8df8691fd9fde895af100be42b (patch) | |
tree | 0bba482a084bb3df55009e286c80ef34a76c0080 /kernel/pid.c | |
parent | 8ed710da2873c2aeb3bb805864a699affaf1d03b (diff) |
media: videobuf2-core: take mmap_lock in vb2_get_unmapped_area()
While vb2_mmap took the mmap_lock mutex, vb2_get_unmapped_area didn't.
Add this.
Also take this opportunity to move the 'q->memory != VB2_MEMORY_MMAP'
check and vb2_fileio_is_active() check into __find_plane_by_offset() so
both vb2_mmap and vb2_get_unmapped_area do the same checks.
Since q->memory is checked while mmap_lock is held, also take that lock
in reqbufs and create_bufs when it is set, and set it back to
MEMORY_UNKNOWN on error.
Fixes: f035eb4e976e ("[media] videobuf2: fix lockdep warning")
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Acked-by: Tomasz Figa <tfiga@chromium.org>
Reviewed-by: Ricardo Ribalda <ribalda@chromium.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/pid.c')
0 files changed, 0 insertions, 0 deletions