aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexandros C. Couloumbis <alex@ozo.com>2010-11-11 13:48:48 +0000
committerAlexandros C. Couloumbis <alex@ozo.com>2010-11-11 13:48:48 +0000
commit5f9d5bcfb60d5ab5bc66ee459e524394adc5537d (patch)
tree3b94f7222fd94f5974c4a42ae2be949f4663fdc6
parentc7dfea4b178ff0f00b8d8f0d91b0818acc2172b8 (diff)
downloadupstream-5f9d5bcfb60d5ab5bc66ee459e524394adc5537d.tar.gz
upstream-5f9d5bcfb60d5ab5bc66ee459e524394adc5537d.tar.bz2
upstream-5f9d5bcfb60d5ab5bc66ee459e524394adc5537d.zip
linux/generic: update mini_fo for kernels >=2.6.36
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23956 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--target/linux/generic/patches-2.6.36/217-mini_fo_2.6.36_fixes.patch31
-rw-r--r--target/linux/generic/patches-2.6.37/217-mini_fo_2.6.36_fixes.patch31
2 files changed, 44 insertions, 18 deletions
diff --git a/target/linux/generic/patches-2.6.36/217-mini_fo_2.6.36_fixes.patch b/target/linux/generic/patches-2.6.36/217-mini_fo_2.6.36_fixes.patch
index ef00b621fb..79024adbb7 100644
--- a/target/linux/generic/patches-2.6.36/217-mini_fo_2.6.36_fixes.patch
+++ b/target/linux/generic/patches-2.6.36/217-mini_fo_2.6.36_fixes.patch
@@ -1,30 +1,43 @@
--- a/fs/mini_fo/super.c
+++ b/fs/mini_fo/super.c
-@@ -117,8 +117,11 @@ mini_fo_delete_inode(inode_t *inode)
+@@ -76,7 +76,7 @@ mini_fo_read_inode(inode_t *inode)
+ * to write some of our own stuff to disk.
+ */
+ STATIC void
+-mini_fo_write_inode(inode_t *inode, int sync)
++mini_fo_write_inode(inode_t *inode, struct writeback_control *wbc)
+ {
+ print_entry_location();
+ print_exit_location();
+@@ -112,13 +112,14 @@ mini_fo_put_inode(inode_t *inode)
+ * on our and the lower inode.
+ */
+ STATIC void
+-mini_fo_delete_inode(inode_t *inode)
++mini_fo_evict_inode(inode_t *inode)
+ {
print_entry_location();
- fist_checkinode(inode, "mini_fo_delete_inode IN");
+- fist_checkinode(inode, "mini_fo_delete_inode IN");
- inode->i_size = 0; /* every f/s seems to do that */
- clear_inode(inode);
-+ // inode->i_size = 0; /* every f/s seems to do that */
++ fist_checkinode(inode, "mini_fo_evict_inode IN");
++ truncate_inode_pages(&inode->i_data, 0); /* FIXME: do we need this? */
++ invalidate_inode_buffers(inode);
+ end_writeback(inode);
-+ dquot_drop(inode);
-+ inode->i_blocks = 0;
-+
print_exit_location();
}
-@@ -300,11 +303,11 @@ struct super_operations mini_fo_sops =
+@@ -300,11 +301,10 @@ struct super_operations mini_fo_sops =
put_inode: mini_fo_put_inode,
#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26) */
#if defined(FIST_DEBUG) || defined(FIST_FILTER_SCA)
- delete_inode: mini_fo_delete_inode,
-+ evict_inode: mini_fo_delete_inode,
++ evict_inode: mini_fo_evict_inode,
#endif /* defined(FIST_DEBUG) || defined(FIST_FILTER_SCA) */
put_super: mini_fo_put_super,
statfs: mini_fo_statfs,
remount_fs: mini_fo_remount_fs,
- clear_inode: mini_fo_clear_inode,
-+ evict_inode: mini_fo_clear_inode,
umount_begin: mini_fo_umount_begin,
};
diff --git a/target/linux/generic/patches-2.6.37/217-mini_fo_2.6.36_fixes.patch b/target/linux/generic/patches-2.6.37/217-mini_fo_2.6.36_fixes.patch
index ef00b621fb..79024adbb7 100644
--- a/target/linux/generic/patches-2.6.37/217-mini_fo_2.6.36_fixes.patch
+++ b/target/linux/generic/patches-2.6.37/217-mini_fo_2.6.36_fixes.patch
@@ -1,30 +1,43 @@
--- a/fs/mini_fo/super.c
+++ b/fs/mini_fo/super.c
-@@ -117,8 +117,11 @@ mini_fo_delete_inode(inode_t *inode)
+@@ -76,7 +76,7 @@ mini_fo_read_inode(inode_t *inode)
+ * to write some of our own stuff to disk.
+ */
+ STATIC void
+-mini_fo_write_inode(inode_t *inode, int sync)
++mini_fo_write_inode(inode_t *inode, struct writeback_control *wbc)
+ {
+ print_entry_location();
+ print_exit_location();
+@@ -112,13 +112,14 @@ mini_fo_put_inode(inode_t *inode)
+ * on our and the lower inode.
+ */
+ STATIC void
+-mini_fo_delete_inode(inode_t *inode)
++mini_fo_evict_inode(inode_t *inode)
+ {
print_entry_location();
- fist_checkinode(inode, "mini_fo_delete_inode IN");
+- fist_checkinode(inode, "mini_fo_delete_inode IN");
- inode->i_size = 0; /* every f/s seems to do that */
- clear_inode(inode);
-+ // inode->i_size = 0; /* every f/s seems to do that */
++ fist_checkinode(inode, "mini_fo_evict_inode IN");
++ truncate_inode_pages(&inode->i_data, 0); /* FIXME: do we need this? */
++ invalidate_inode_buffers(inode);
+ end_writeback(inode);
-+ dquot_drop(inode);
-+ inode->i_blocks = 0;
-+
print_exit_location();
}
-@@ -300,11 +303,11 @@ struct super_operations mini_fo_sops =
+@@ -300,11 +301,10 @@ struct super_operations mini_fo_sops =
put_inode: mini_fo_put_inode,
#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26) */
#if defined(FIST_DEBUG) || defined(FIST_FILTER_SCA)
- delete_inode: mini_fo_delete_inode,
-+ evict_inode: mini_fo_delete_inode,
++ evict_inode: mini_fo_evict_inode,
#endif /* defined(FIST_DEBUG) || defined(FIST_FILTER_SCA) */
put_super: mini_fo_put_super,
statfs: mini_fo_statfs,
remount_fs: mini_fo_remount_fs,
- clear_inode: mini_fo_clear_inode,
-+ evict_inode: mini_fo_clear_inode,
umount_begin: mini_fo_umount_begin,
};