From: John Crispin Date: Tue, 10 Mar 2015 13:08:17 +0000 (+0000) Subject: kernel: fix yaffs compile for >= v3.16 X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=commitdiff_plain;hb=a26d84c3b73fc5eda416b6a18507c08f11a2d67e kernel: fix yaffs compile for >= v3.16 Signed-off-by: John Crispin SVN-Revision: 44643 --- diff --git a/target/linux/generic/patches-3.18/505-yaffs-3.16-new-fops.patch b/target/linux/generic/patches-3.18/505-yaffs-3.16-new-fops.patch new file mode 100644 index 0000000000..855b9fc134 --- /dev/null +++ b/target/linux/generic/patches-3.18/505-yaffs-3.16-new-fops.patch @@ -0,0 +1,28 @@ +--- a/fs/yaffs2/yaffs_vfs.c ++++ b/fs/yaffs2/yaffs_vfs.c +@@ -796,13 +796,13 @@ + static const struct file_operations yaffs_file_operations = { + .read = do_sync_read, + .write = do_sync_write, +- .aio_read = generic_file_aio_read, +- .aio_write = generic_file_aio_write, ++ .read_iter = generic_file_read_iter, ++ .write_iter = generic_file_write_iter, + .mmap = generic_file_mmap, + .flush = yaffs_file_flush, + .fsync = yaffs_sync_object, + .splice_read = generic_file_splice_read, +- .splice_write = generic_file_splice_write, ++ .splice_write = iter_file_splice_write, + .llseek = generic_file_llseek, + }; + +@@ -1050,7 +1050,7 @@ + if (!alias) + return -ENOMEM; + +- ret = vfs_readlink(dentry, buffer, buflen, alias); ++ ret = readlink_copy(buffer, buflen, alias); + kfree(alias); + return ret; + } diff --git a/target/linux/generic/patches-3.19/505-yaffs-3.16-new-fops.patch b/target/linux/generic/patches-3.19/505-yaffs-3.16-new-fops.patch new file mode 100644 index 0000000000..855b9fc134 --- /dev/null +++ b/target/linux/generic/patches-3.19/505-yaffs-3.16-new-fops.patch @@ -0,0 +1,28 @@ +--- a/fs/yaffs2/yaffs_vfs.c ++++ b/fs/yaffs2/yaffs_vfs.c +@@ -796,13 +796,13 @@ + static const struct file_operations yaffs_file_operations = { + .read = do_sync_read, + .write = do_sync_write, +- .aio_read = generic_file_aio_read, +- .aio_write = generic_file_aio_write, ++ .read_iter = generic_file_read_iter, ++ .write_iter = generic_file_write_iter, + .mmap = generic_file_mmap, + .flush = yaffs_file_flush, + .fsync = yaffs_sync_object, + .splice_read = generic_file_splice_read, +- .splice_write = generic_file_splice_write, ++ .splice_write = iter_file_splice_write, + .llseek = generic_file_llseek, + }; + +@@ -1050,7 +1050,7 @@ + if (!alias) + return -ENOMEM; + +- ret = vfs_readlink(dentry, buffer, buflen, alias); ++ ret = readlink_copy(buffer, buflen, alias); + kfree(alias); + return ret; + } diff --git a/target/linux/generic/patches-4.0/505-yaffs-3.16-new-fops.patch b/target/linux/generic/patches-4.0/505-yaffs-3.16-new-fops.patch new file mode 100644 index 0000000000..855b9fc134 --- /dev/null +++ b/target/linux/generic/patches-4.0/505-yaffs-3.16-new-fops.patch @@ -0,0 +1,28 @@ +--- a/fs/yaffs2/yaffs_vfs.c ++++ b/fs/yaffs2/yaffs_vfs.c +@@ -796,13 +796,13 @@ + static const struct file_operations yaffs_file_operations = { + .read = do_sync_read, + .write = do_sync_write, +- .aio_read = generic_file_aio_read, +- .aio_write = generic_file_aio_write, ++ .read_iter = generic_file_read_iter, ++ .write_iter = generic_file_write_iter, + .mmap = generic_file_mmap, + .flush = yaffs_file_flush, + .fsync = yaffs_sync_object, + .splice_read = generic_file_splice_read, +- .splice_write = generic_file_splice_write, ++ .splice_write = iter_file_splice_write, + .llseek = generic_file_llseek, + }; + +@@ -1050,7 +1050,7 @@ + if (!alias) + return -ENOMEM; + +- ret = vfs_readlink(dentry, buffer, buflen, alias); ++ ret = readlink_copy(buffer, buflen, alias); + kfree(alias); + return ret; + }