From 7029e829c7617bd7bb29797525d9dcd86b7c385f Mon Sep 17 00:00:00 2001 From: nbd Date: Sun, 17 Jan 2010 22:52:24 +0000 Subject: [PATCH] add mini_fo locking fix from #5864 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19203 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../patches-2.6.30/216-mini_fo_locking.patch | 25 ++++++++++++++++++++++ .../patches-2.6.31/216-mini_fo_locking.patch | 25 ++++++++++++++++++++++ .../patches-2.6.32/216-mini_fo_locking.patch | 25 ++++++++++++++++++++++ 3 files changed, 75 insertions(+) create mode 100644 target/linux/generic-2.6/patches-2.6.30/216-mini_fo_locking.patch create mode 100644 target/linux/generic-2.6/patches-2.6.31/216-mini_fo_locking.patch create mode 100644 target/linux/generic-2.6/patches-2.6.32/216-mini_fo_locking.patch 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 index 0000000000..4f075920fb --- /dev/null +++ b/target/linux/generic-2.6/patches-2.6.30/216-mini_fo_locking.patch @@ -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 index 0000000000..4f075920fb --- /dev/null +++ b/target/linux/generic-2.6/patches-2.6.31/216-mini_fo_locking.patch @@ -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 index 0000000000..4f075920fb --- /dev/null +++ b/target/linux/generic-2.6/patches-2.6.32/216-mini_fo_locking.patch @@ -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: -- 2.11.0