diff options
Diffstat (limited to 'target/linux/generic/patches-3.12/507-yaffs-3.3_fix.patch')
-rw-r--r-- | target/linux/generic/patches-3.12/507-yaffs-3.3_fix.patch | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/target/linux/generic/patches-3.12/507-yaffs-3.3_fix.patch b/target/linux/generic/patches-3.12/507-yaffs-3.3_fix.patch new file mode 100644 index 0000000000..d823fc49c4 --- /dev/null +++ b/target/linux/generic/patches-3.12/507-yaffs-3.3_fix.patch @@ -0,0 +1,71 @@ +--- a/fs/yaffs2/yaffs_vfs_glue.c ++++ b/fs/yaffs2/yaffs_vfs_glue.c +@@ -273,8 +273,13 @@ static int yaffs_sync_object(struct file + static int yaffs_readdir(struct file *f, void *dirent, filldir_t filldir); + + #if (LINUX_VERSION_CODE > KERNEL_VERSION(2, 5, 0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 3, 0)) ++static int yaffs_create(struct inode *dir, struct dentry *dentry, umode_t mode, ++ struct nameidata *n); ++#else + static int yaffs_create(struct inode *dir, struct dentry *dentry, int mode, + struct nameidata *n); ++#endif + static struct dentry *yaffs_lookup(struct inode *dir, struct dentry *dentry, + struct nameidata *n); + #else +@@ -286,9 +291,17 @@ static int yaffs_link(struct dentry *old + static int yaffs_unlink(struct inode *dir, struct dentry *dentry); + static int yaffs_symlink(struct inode *dir, struct dentry *dentry, + const char *symname); ++ ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 3, 0)) ++static int yaffs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode); ++#else + static int yaffs_mkdir(struct inode *dir, struct dentry *dentry, int mode); ++#endif + +-#if (LINUX_VERSION_CODE > KERNEL_VERSION(2, 5, 0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 3, 0)) ++static int yaffs_mknod(struct inode *dir, struct dentry *dentry, umode_t mode, ++ dev_t dev); ++#elif (LINUX_VERSION_CODE > KERNEL_VERSION(2, 5, 0)) + static int yaffs_mknod(struct inode *dir, struct dentry *dentry, int mode, + dev_t dev); + #else +@@ -1679,7 +1692,10 @@ out: + #define YCRED(x) (x->cred) + #endif + +-#if (LINUX_VERSION_CODE > KERNEL_VERSION(2, 5, 0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 3, 0)) ++static int yaffs_mknod(struct inode *dir, struct dentry *dentry, umode_t mode, ++ dev_t rdev) ++#elif (LINUX_VERSION_CODE > KERNEL_VERSION(2, 5, 0)) + static int yaffs_mknod(struct inode *dir, struct dentry *dentry, int mode, + dev_t rdev) + #else +@@ -1769,7 +1785,11 @@ static int yaffs_mknod(struct inode *dir + return error; + } + ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 3, 0)) ++static int yaffs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode) ++#else + static int yaffs_mkdir(struct inode *dir, struct dentry *dentry, int mode) ++#endif + { + int retVal; + T(YAFFS_TRACE_OS, (TSTR("yaffs_mkdir\n"))); +@@ -1777,7 +1797,10 @@ static int yaffs_mkdir(struct inode *dir + return retVal; + } + +-#if (LINUX_VERSION_CODE > KERNEL_VERSION(2, 5, 0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 3, 0)) ++static int yaffs_create(struct inode *dir, struct dentry *dentry, umode_t mode, ++ struct nameidata *n) ++#elif (LINUX_VERSION_CODE > KERNEL_VERSION(2, 5, 0)) + static int yaffs_create(struct inode *dir, struct dentry *dentry, int mode, + struct nameidata *n) + #else |