android_kernel_samsung_sm8650/fs/fuse
Andrey Ryabinin a2477b0e67 fuse: Don't access pipe->buffers without pipe_lock()
fuse_dev_splice_write() reads pipe->buffers to determine the size of
'bufs' array before taking the pipe_lock(). This is not safe as
another thread might change the 'pipe->buffers' between the allocation
and taking the pipe_lock(). So we end up with too small 'bufs' array.

Move the bufs allocations inside pipe_lock()/pipe_unlock() to fix this.

Fixes: dd3bb14f44 ("fuse: support splice() writing to fuse device")
Signed-off-by: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: <stable@vger.kernel.org> # v2.6.35
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
2018-07-26 16:13:11 +02:00
..
acl.c fuse: Support fuse filesystems outside of init_user_ns 2018-03-20 17:11:44 +01:00
control.c fuse: fix control dir setup and teardown 2018-05-31 12:26:10 +02:00
cuse.c fuse: Support fuse filesystems outside of init_user_ns 2018-03-20 17:11:44 +01:00
dev.c fuse: Don't access pipe->buffers without pipe_lock() 2018-07-26 16:13:11 +02:00
dir.c fuse: fix initial parallel dirops 2018-07-26 16:13:11 +02:00
file.c vfs: do bulk POLL* -> EPOLL* replacement 2018-02-11 14:34:03 -08:00
fuse_i.h fuse: fix initial parallel dirops 2018-07-26 16:13:11 +02:00
inode.c fuse: fix initial parallel dirops 2018-07-26 16:13:11 +02:00
Kconfig fuse: Add posix ACL support 2016-10-01 07:32:32 +02:00
Makefile fuse: Use generic xattr ops 2016-10-01 07:32:32 +02:00
xattr.c fuse: Ensure posix acls are translated outside of init_user_ns 2018-05-31 12:26:10 +02:00