akpm@xxxxxxxxxxxxxxxxxxxx wrote:
The patch titled git-block-vs-reiser4 has been removed from the -mm tree. Its filename was git-block-vs-reiser4.patch This patch was dropped because it was folded into reiser4.patch ------------------------------------------------------ Subject: git-block-vs-reiser4 From: Andrew Morton Hope this is right. Hope you know what you're doing ;)
This is a fixup for broken loopback functionality. Thanks, Edward.
Specify splice_read, splice_write file operations for loopback functionality. Signed-off-by: Edward Shishkin <edward.shishkin@xxxxxxxxx> --- linux-2.6.24-rc3-mm2/fs/reiser4/plugin/file/cryptcompress.c | 3 ++- linux-2.6.24-rc3-mm2/fs/reiser4/plugin/object.c | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) --- linux-2.6.24-rc3-mm2/fs/reiser4/plugin/file/cryptcompress.c.orig +++ linux-2.6.24-rc3-mm2/fs/reiser4/plugin/file/cryptcompress.c @@ -3747,13 +3747,14 @@ int prepare_write_cryptcompress(struct file *file, struct page *page, unsigned from, unsigned to) { - return 0; + return -EINVAL; } /* plugin->commit_write */ int commit_write_cryptcompress(struct file *file, struct page *page, unsigned from, unsigned to) { + BUG(); return 0; } --- linux-2.6.24-rc3-mm2/fs/reiser4/plugin/object.c.orig +++ linux-2.6.24-rc3-mm2/fs/reiser4/plugin/object.c @@ -103,7 +103,9 @@ .mmap = reiser4_mmap_careful, .open = reiser4_open_careful, .release = reiser4_release_careful, - .fsync = reiser4_sync_file_common + .fsync = reiser4_sync_file_common, + .splice_read = generic_file_splice_read, + .splice_write = generic_file_splice_write }; static struct address_space_operations regular_file_a_ops = { .writepage = reiser4_writepage,