fuse: fix pipe_buf_operations
commit28a625cbc2a14f17b83e47ef907b2658576a32aa
authorMiklos Szeredi <mszeredi@suse.cz>
Wed, 22 Jan 2014 18:36:57 +0000 (22 19:36 +0100)
committerMiklos Szeredi <mszeredi@suse.cz>
Wed, 22 Jan 2014 18:36:57 +0000 (22 19:36 +0100)
tree58d461b91f25a6499bd6404cd79faa4f9c185ff0
parentd8ec26d7f8287f5788a494f56e8814210f0e64be
fuse: fix pipe_buf_operations

Having this struct in module memory could Oops when if the module is
unloaded while the buffer still persists in a pipe.

Since sock_pipe_buf_ops is essentially the same as fuse_dev_pipe_buf_steal
merge them into nosteal_pipe_buf_ops (this is the same as
default_pipe_buf_ops except stealing the page from the buffer is not
allowed).

Reported-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Cc: stable@vger.kernel.org
fs/fuse/dev.c
fs/splice.c
include/linux/pipe_fs_i.h
net/core/skbuff.c