aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-2.6.38/217-mini_fo_2.6.36_fixes.patch
diff options
context:
space:
mode:
authorImre Kaloz <kaloz@openwrt.org>2011-01-21 17:52:22 +0000
committerImre Kaloz <kaloz@openwrt.org>2011-01-21 17:52:22 +0000
commit2a7bdb2ef04b744e08d54e65e2cd76780a71aa34 (patch)
tree7b8643b5144db15c53536abf69dec2a49aa31bef /target/linux/generic/patches-2.6.38/217-mini_fo_2.6.36_fixes.patch
parent318102d24a60f6442052508c391aa984c5dbf97c (diff)
downloadmaster-187ad058-2a7bdb2ef04b744e08d54e65e2cd76780a71aa34.tar.gz
master-187ad058-2a7bdb2ef04b744e08d54e65e2cd76780a71aa34.tar.bz2
master-187ad058-2a7bdb2ef04b744e08d54e65e2cd76780a71aa34.zip
[target/generic]: preliminary 2.6.38 support
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25057 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic/patches-2.6.38/217-mini_fo_2.6.36_fixes.patch')
-rw-r--r--target/linux/generic/patches-2.6.38/217-mini_fo_2.6.36_fixes.patch43
1 files changed, 43 insertions, 0 deletions
diff --git a/target/linux/generic/patches-2.6.38/217-mini_fo_2.6.36_fixes.patch b/target/linux/generic/patches-2.6.38/217-mini_fo_2.6.36_fixes.patch
new file mode 100644
index 0000000000..79024adbb7
--- /dev/null
+++ b/target/linux/generic/patches-2.6.38/217-mini_fo_2.6.36_fixes.patch
@@ -0,0 +1,43 @@
+--- a/fs/mini_fo/super.c
++++ b/fs/mini_fo/super.c
+@@ -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");
+- inode->i_size = 0; /* every f/s seems to do that */
+- clear_inode(inode);
++ 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);
+
+ print_exit_location();
+ }
+@@ -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_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,
+ umount_begin: mini_fo_umount_begin,
+ };