diff options
Diffstat (limited to 'target/linux/generic/patches-4.4/504-yaffs-3.16-new-fops.patch')
-rw-r--r-- | target/linux/generic/patches-4.4/504-yaffs-3.16-new-fops.patch | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/target/linux/generic/patches-4.4/504-yaffs-3.16-new-fops.patch b/target/linux/generic/patches-4.4/504-yaffs-3.16-new-fops.patch new file mode 100644 index 0000000000..32b4fdfa39 --- /dev/null +++ b/target/linux/generic/patches-4.4/504-yaffs-3.16-new-fops.patch @@ -0,0 +1,29 @@ +--- a/fs/yaffs2/yaffs_vfs.c ++++ b/fs/yaffs2/yaffs_vfs.c +@@ -774,7 +774,25 @@ static int yaffs_sync_object(struct file + } + + +-#if (LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 22)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0)) ++static const struct file_operations yaffs_file_operations = { ++#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 1, 0)) ++ .read = new_sync_read, ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(4, 1, 0) */ ++ .read_iter = generic_file_read_iter, ++#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 1, 0)) ++ .write = new_sync_write, ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(4, 1, 0) */ ++ .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 = iter_file_splice_write, ++ .llseek = generic_file_llseek, ++}; ++ ++#elif (LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 22)) + static const struct file_operations yaffs_file_operations = { + .read = do_sync_read, + .write = do_sync_write, |