aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-2.6.37/211-mini_fo_2.6.25_dentry_open_war.patch
diff options
context:
space:
mode:
authorAlexandros C. Couloumbis <alex@ozo.com>2010-11-03 16:13:33 +0000
committerAlexandros C. Couloumbis <alex@ozo.com>2010-11-03 16:13:33 +0000
commita2d17ea8cf06f36d67c0d8850e580ce21a6bb837 (patch)
tree15c9d10a1c3c5b8cc071618dcf5210a9beaeff37 /target/linux/generic/patches-2.6.37/211-mini_fo_2.6.25_dentry_open_war.patch
parent55081c6a197789823d03f6c16a47312407c611da (diff)
downloadupstream-a2d17ea8cf06f36d67c0d8850e580ce21a6bb837.tar.gz
upstream-a2d17ea8cf06f36d67c0d8850e580ce21a6bb837.tar.bz2
upstream-a2d17ea8cf06f36d67c0d8850e580ce21a6bb837.zip
target/linux: add preliminary 2.6.37 kernel support
SVN-Revision: 23828
Diffstat (limited to 'target/linux/generic/patches-2.6.37/211-mini_fo_2.6.25_dentry_open_war.patch')
-rw-r--r--target/linux/generic/patches-2.6.37/211-mini_fo_2.6.25_dentry_open_war.patch66
1 files changed, 66 insertions, 0 deletions
diff --git a/target/linux/generic/patches-2.6.37/211-mini_fo_2.6.25_dentry_open_war.patch b/target/linux/generic/patches-2.6.37/211-mini_fo_2.6.25_dentry_open_war.patch
new file mode 100644
index 0000000000..48a19429b9
--- /dev/null
+++ b/target/linux/generic/patches-2.6.37/211-mini_fo_2.6.25_dentry_open_war.patch
@@ -0,0 +1,66 @@
+--- a/fs/mini_fo/meta.c
++++ b/fs/mini_fo/meta.c
+@@ -442,6 +442,11 @@ int meta_write_d_entry(dentry_t *dentry,
+ S_IRUSR | S_IWUSR);
+ #endif
+ }
++
++ /* $%& err, is this correct? */
++ meta_mnt = stopd(dentry->d_inode->i_sb)->hidden_mnt2;
++ mntget(meta_mnt);
++
+ /* open META-file for writing */
+ meta_file = dentry_open(meta_dentry, meta_mnt, 0x1);
+ if(!meta_file || IS_ERR(meta_file)) {
+@@ -535,6 +540,11 @@ int meta_write_r_entry(dentry_t *dentry,
+ meta_dentry, S_IRUSR | S_IWUSR);
+ #endif
+ }
++
++ /* $%& err, is this correct? */
++ meta_mnt = stopd(dentry->d_inode->i_sb)->hidden_mnt2;
++ mntget(meta_mnt);
++
+ /* open META-file for writing */
+ meta_file = dentry_open(meta_dentry, meta_mnt, 0x1);
+ if(!meta_file || IS_ERR(meta_file)) {
+@@ -671,14 +681,16 @@ int meta_sync_d_list(dentry_t *dentry, i
+ }
+ }
+
++ /* $%& err, is this correct? */
++ meta_mnt = stopd(dentry->d_inode->i_sb)->hidden_mnt2;
++ mntget(meta_mnt);
++
+ /* open META-file for writing */
+ meta_file = dentry_open(meta_dentry, meta_mnt, 0x1);
+ if(!meta_file || IS_ERR(meta_file)) {
+ printk(KERN_CRIT "mini_fo: meta_sync_d_list: \
+ ERROR opening meta file.\n");
+- /* we don't mntget so we dont't mntput (for now)
+- * mntput(meta_mnt);
+- */
++ mntput(meta_mnt);
+ dput(meta_dentry);
+ err = -1;
+ goto out;
+@@ -811,14 +823,16 @@ int meta_sync_r_list(dentry_t *dentry, i
+ }
+ }
+
++ /* $%& err, is this correct? */
++ meta_mnt = stopd(dentry->d_inode->i_sb)->hidden_mnt2;
++ mntget(meta_mnt);
++
+ /* open META-file for writing */
+ meta_file = dentry_open(meta_dentry, meta_mnt, 0x1);
+ if(!meta_file || IS_ERR(meta_file)) {
+ printk(KERN_CRIT "mini_fo: meta_sync_r_list: \
+ ERROR opening meta file.\n");
+- /* we don't mntget so we dont't mntput (for now)
+- * mntput(meta_mnt);
+- */
++ mntput(meta_mnt);
+ dput(meta_dentry);
+ err = -1;
+ goto out;