summaryrefslogtreecommitdiff
path: root/target/linux/generic-2.6/patches-2.6.25/511-yaffs_2.6.25_fix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/generic-2.6/patches-2.6.25/511-yaffs_2.6.25_fix.patch')
-rw-r--r--target/linux/generic-2.6/patches-2.6.25/511-yaffs_2.6.25_fix.patch36
1 files changed, 17 insertions, 19 deletions
diff --git a/target/linux/generic-2.6/patches-2.6.25/511-yaffs_2.6.25_fix.patch b/target/linux/generic-2.6/patches-2.6.25/511-yaffs_2.6.25_fix.patch
index 83db1b8..ac89534 100644
--- a/target/linux/generic-2.6/patches-2.6.25/511-yaffs_2.6.25_fix.patch
+++ b/target/linux/generic-2.6/patches-2.6.25/511-yaffs_2.6.25_fix.patch
@@ -1,8 +1,6 @@
-Index: linux-2.6.25.4/fs/yaffs2/yaffs_fs.c
-===================================================================
---- linux-2.6.25.4.orig/fs/yaffs2/yaffs_fs.c
-+++ linux-2.6.25.4/fs/yaffs2/yaffs_fs.c
-@@ -181,7 +181,13 @@ static int yaffs_statfs(struct super_blo
+--- a/fs/yaffs2/yaffs_fs.c
++++ b/fs/yaffs2/yaffs_fs.c
+@@ -181,7 +181,13 @@
#else
static int yaffs_statfs(struct super_block *sb, struct statfs *buf);
#endif
@@ -13,11 +11,11 @@ Index: linux-2.6.25.4/fs/yaffs2/yaffs_fs.c
static void yaffs_read_inode(struct inode *inode);
+#endif
+
-
+
static void yaffs_put_inode(struct inode *inode);
static void yaffs_delete_inode(struct inode *);
-@@ -284,7 +290,9 @@ static struct file_operations yaffs_dir_
-
+@@ -284,7 +290,9 @@
+
static struct super_operations yaffs_super_ops = {
.statfs = yaffs_statfs,
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,25))
@@ -26,28 +24,28 @@ Index: linux-2.6.25.4/fs/yaffs2/yaffs_fs.c
.put_inode = yaffs_put_inode,
.put_super = yaffs_put_super,
.delete_inode = yaffs_delete_inode,
-@@ -844,11 +852,17 @@ struct inode *yaffs_get_inode(struct sup
+@@ -844,11 +852,17 @@
T(YAFFS_TRACE_OS,
(KERN_DEBUG "yaffs_get_inode for object %d\n", obj->objectId));
-
+
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,25))
+ inode = yaffs_iget(sb, obj->objectId);
+ if (IS_ERR(inode))
+ return NULL;
+#else
inode = iget(sb, obj->objectId);
-
+
/* NB Side effect: iget calls back to yaffs_read_inode(). */
/* iget also increments the inode's i_count */
/* NB You can't be holding grossLock or deadlock will happen! */
+#endif
-
+
return inode;
}
-@@ -1427,6 +1441,39 @@ static int yaffs_sync_fs(struct super_bl
+@@ -1427,6 +1441,39 @@
}
-
-
+
+
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,25))
+static struct inode *yaffs_iget(struct super_block *sb, unsigned long ino)
+{
@@ -84,11 +82,11 @@ Index: linux-2.6.25.4/fs/yaffs2/yaffs_fs.c
static void yaffs_read_inode(struct inode *inode)
{
/* NB This is called as a side effect of other functions, but
-@@ -1448,6 +1495,7 @@ static void yaffs_read_inode(struct inod
-
+@@ -1448,6 +1495,7 @@
+
yaffs_GrossUnlock(dev);
}
+#endif /* (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,25)) */
-
+
static LIST_HEAD(yaffs_dev_list);
-
+