add mini_fo locking fix from #5864
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 17 Jan 2010 22:52:24 +0000 (22:52 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 17 Jan 2010 22:52:24 +0000 (22:52 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19203 3c298f89-4303-0410-b956-a3cf2f4a3e73

target/linux/generic-2.6/patches-2.6.30/216-mini_fo_locking.patch [new file with mode: 0644]
target/linux/generic-2.6/patches-2.6.31/216-mini_fo_locking.patch [new file with mode: 0644]
target/linux/generic-2.6/patches-2.6.32/216-mini_fo_locking.patch [new file with mode: 0644]

diff --git a/target/linux/generic-2.6/patches-2.6.30/216-mini_fo_locking.patch b/target/linux/generic-2.6/patches-2.6.30/216-mini_fo_locking.patch
new file mode 100644 (file)
index 0000000..4f07592
--- /dev/null
@@ -0,0 +1,25 @@
+--- a/fs/mini_fo/state.c
++++ b/fs/mini_fo/state.c
+@@ -537,17 +537,17 @@ int nondir_mod_to_del(dentry_t *dentry)
+       dtohd(dentry) = NULL;
+       dtost(dentry) = DELETED;
+-      /* add deleted file to META-file */
+-      meta_add_d_entry(dentry->d_parent,
+-                       dentry->d_name.name,
+-                       dentry->d_name.len);
+-
+       /* was: unlock_dir(hidden_sto_dir_dentry); */
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16)
+       mutex_unlock(&hidden_sto_dir_dentry->d_inode->i_mutex);
+ #else
+       up(&hidden_sto_dir_dentry->d_inode->i_sem);
+ #endif
++      /* add deleted file to META-file */
++      meta_add_d_entry(dentry->d_parent,
++                       dentry->d_name.name,
++                       dentry->d_name.len);
++
+       dput(hidden_sto_dir_dentry);
+  out:
diff --git a/target/linux/generic-2.6/patches-2.6.31/216-mini_fo_locking.patch b/target/linux/generic-2.6/patches-2.6.31/216-mini_fo_locking.patch
new file mode 100644 (file)
index 0000000..4f07592
--- /dev/null
@@ -0,0 +1,25 @@
+--- a/fs/mini_fo/state.c
++++ b/fs/mini_fo/state.c
+@@ -537,17 +537,17 @@ int nondir_mod_to_del(dentry_t *dentry)
+       dtohd(dentry) = NULL;
+       dtost(dentry) = DELETED;
+-      /* add deleted file to META-file */
+-      meta_add_d_entry(dentry->d_parent,
+-                       dentry->d_name.name,
+-                       dentry->d_name.len);
+-
+       /* was: unlock_dir(hidden_sto_dir_dentry); */
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16)
+       mutex_unlock(&hidden_sto_dir_dentry->d_inode->i_mutex);
+ #else
+       up(&hidden_sto_dir_dentry->d_inode->i_sem);
+ #endif
++      /* add deleted file to META-file */
++      meta_add_d_entry(dentry->d_parent,
++                       dentry->d_name.name,
++                       dentry->d_name.len);
++
+       dput(hidden_sto_dir_dentry);
+  out:
diff --git a/target/linux/generic-2.6/patches-2.6.32/216-mini_fo_locking.patch b/target/linux/generic-2.6/patches-2.6.32/216-mini_fo_locking.patch
new file mode 100644 (file)
index 0000000..4f07592
--- /dev/null
@@ -0,0 +1,25 @@
+--- a/fs/mini_fo/state.c
++++ b/fs/mini_fo/state.c
+@@ -537,17 +537,17 @@ int nondir_mod_to_del(dentry_t *dentry)
+       dtohd(dentry) = NULL;
+       dtost(dentry) = DELETED;
+-      /* add deleted file to META-file */
+-      meta_add_d_entry(dentry->d_parent,
+-                       dentry->d_name.name,
+-                       dentry->d_name.len);
+-
+       /* was: unlock_dir(hidden_sto_dir_dentry); */
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16)
+       mutex_unlock(&hidden_sto_dir_dentry->d_inode->i_mutex);
+ #else
+       up(&hidden_sto_dir_dentry->d_inode->i_sem);
+ #endif
++      /* add deleted file to META-file */
++      meta_add_d_entry(dentry->d_parent,
++                       dentry->d_name.name,
++                       dentry->d_name.len);
++
+       dput(hidden_sto_dir_dentry);
+  out: