tmpfs: clone shmem_file_splice_read()
Copy __generic_file_splice_read() and generic_file_splice_read() from fs/splice.c to shmem_file_splice_read() in mm/shmem.c. Make page_cache_pipe_buf_ops and spd_release_page() accessible to it. Signed-off-by: Hugh Dickins <hughd@google.com> Cc: Jens Axboe <jaxboe@fusionio.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
2efaca927f
commit
708e3508c2
@@ -132,7 +132,7 @@ error:
|
||||
return err;
|
||||
}
|
||||
|
||||
static const struct pipe_buf_operations page_cache_pipe_buf_ops = {
|
||||
const struct pipe_buf_operations page_cache_pipe_buf_ops = {
|
||||
.can_merge = 0,
|
||||
.map = generic_pipe_buf_map,
|
||||
.unmap = generic_pipe_buf_unmap,
|
||||
@@ -264,7 +264,7 @@ ssize_t splice_to_pipe(struct pipe_inode_info *pipe,
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void spd_release_page(struct splice_pipe_desc *spd, unsigned int i)
|
||||
void spd_release_page(struct splice_pipe_desc *spd, unsigned int i)
|
||||
{
|
||||
page_cache_release(spd->pages[i]);
|
||||
}
|
||||
|
Reference in New Issue
Block a user