aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-2.6.36/211-mini_fo_2.6.25_dentry_open_war.patch
diff options
context:
space:
mode:
authorAlexandros C. Couloumbis <alex@ozo.com>2010-08-29 14:35:23 +0000
committerAlexandros C. Couloumbis <alex@ozo.com>2010-08-29 14:35:23 +0000
commit206e5f313e425c2b727b64a023a62c1f3de59b72 (patch)
treed7d49f33d5b291ac9f72b066866fdc293cf47dc7 /target/linux/generic/patches-2.6.36/211-mini_fo_2.6.25_dentry_open_war.patch
parent28d7de48b8c1150b5d72da89a9fb51f271843579 (diff)
downloadupstream-206e5f313e425c2b727b64a023a62c1f3de59b72.tar.gz
upstream-206e5f313e425c2b727b64a023a62c1f3de59b72.tar.bz2
upstream-206e5f313e425c2b727b64a023a62c1f3de59b72.zip
linux/generic: add kernel 2.6.36 preliminary support
SVN-Revision: 22832
Diffstat (limited to 'target/linux/generic/patches-2.6.36/211-mini_fo_2.6.25_dentry_open_war.patch')
-rw-r--r--target/linux/generic/patches-2.6.36/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.36/211-mini_fo_2.6.25_dentry_open_war.patch b/target/linux/generic/patches-2.6.36/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.36/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;