From: Jo-Philipp Wich Date: Wed, 5 Jan 2011 03:07:56 +0000 (+0000) Subject: fix unbalanced mutex_lock/mutex_unlock in mini_fo getxattr op. Thanks Daniel Dickinso... X-Git-Url: http://git.openwrt.org/?a=commitdiff_plain;h=e8cee6c8501989f560887851e2319ef8ec571043;p=openwrt%2Fstaging%2Fflorian.git fix unbalanced mutex_lock/mutex_unlock in mini_fo getxattr op. Thanks Daniel Dickinson for tracking this down SVN-Revision: 24906 --- diff --git a/target/linux/generic/patches-2.6.30/209-mini_fo.patch b/target/linux/generic/patches-2.6.30/209-mini_fo.patch index bb6f381a14..16d880b66e 100644 --- a/target/linux/generic/patches-2.6.30/209-mini_fo.patch +++ b/target/linux/generic/patches-2.6.30/209-mini_fo.patch @@ -3454,7 +3454,7 @@ + err = hidden_dentry->d_inode->i_op->getxattr(hidden_dentry, encoded_name, encoded_value, size); + /* unlock_kernel() will be done by caller. */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -+ mutex_lock(&hidden_dentry->d_inode->i_mutex); ++ mutex_unlock(&hidden_dentry->d_inode->i_mutex); +#else + up(&hidden_dentry->d_inode->i_sem); +#endif diff --git a/target/linux/generic/patches-2.6.31/209-mini_fo.patch b/target/linux/generic/patches-2.6.31/209-mini_fo.patch index e3ce162ad7..0886c6be25 100644 --- a/target/linux/generic/patches-2.6.31/209-mini_fo.patch +++ b/target/linux/generic/patches-2.6.31/209-mini_fo.patch @@ -3454,7 +3454,7 @@ + err = hidden_dentry->d_inode->i_op->getxattr(hidden_dentry, encoded_name, encoded_value, size); + /* unlock_kernel() will be done by caller. */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -+ mutex_lock(&hidden_dentry->d_inode->i_mutex); ++ mutex_unlock(&hidden_dentry->d_inode->i_mutex); +#else + up(&hidden_dentry->d_inode->i_sem); +#endif diff --git a/target/linux/generic/patches-2.6.32/209-mini_fo.patch b/target/linux/generic/patches-2.6.32/209-mini_fo.patch index 0b4091c64e..8f9140ac5b 100644 --- a/target/linux/generic/patches-2.6.32/209-mini_fo.patch +++ b/target/linux/generic/patches-2.6.32/209-mini_fo.patch @@ -3454,7 +3454,7 @@ + err = hidden_dentry->d_inode->i_op->getxattr(hidden_dentry, encoded_name, encoded_value, size); + /* unlock_kernel() will be done by caller. */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -+ mutex_lock(&hidden_dentry->d_inode->i_mutex); ++ mutex_unlock(&hidden_dentry->d_inode->i_mutex); +#else + up(&hidden_dentry->d_inode->i_sem); +#endif diff --git a/target/linux/generic/patches-2.6.34/209-mini_fo.patch b/target/linux/generic/patches-2.6.34/209-mini_fo.patch index d7e3220d24..f1587786dd 100644 --- a/target/linux/generic/patches-2.6.34/209-mini_fo.patch +++ b/target/linux/generic/patches-2.6.34/209-mini_fo.patch @@ -3456,7 +3456,7 @@ + err = hidden_dentry->d_inode->i_op->getxattr(hidden_dentry, encoded_name, encoded_value, size); + /* unlock_kernel() will be done by caller. */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -+ mutex_lock(&hidden_dentry->d_inode->i_mutex); ++ mutex_unlock(&hidden_dentry->d_inode->i_mutex); +#else + up(&hidden_dentry->d_inode->i_sem); +#endif diff --git a/target/linux/generic/patches-2.6.35/209-mini_fo.patch b/target/linux/generic/patches-2.6.35/209-mini_fo.patch index d7e3220d24..f1587786dd 100644 --- a/target/linux/generic/patches-2.6.35/209-mini_fo.patch +++ b/target/linux/generic/patches-2.6.35/209-mini_fo.patch @@ -3456,7 +3456,7 @@ + err = hidden_dentry->d_inode->i_op->getxattr(hidden_dentry, encoded_name, encoded_value, size); + /* unlock_kernel() will be done by caller. */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -+ mutex_lock(&hidden_dentry->d_inode->i_mutex); ++ mutex_unlock(&hidden_dentry->d_inode->i_mutex); +#else + up(&hidden_dentry->d_inode->i_sem); +#endif diff --git a/target/linux/generic/patches-2.6.36/209-mini_fo.patch b/target/linux/generic/patches-2.6.36/209-mini_fo.patch index 10900b4e18..767606dbd7 100644 --- a/target/linux/generic/patches-2.6.36/209-mini_fo.patch +++ b/target/linux/generic/patches-2.6.36/209-mini_fo.patch @@ -3456,7 +3456,7 @@ + err = hidden_dentry->d_inode->i_op->getxattr(hidden_dentry, encoded_name, encoded_value, size); + /* unlock_kernel() will be done by caller. */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -+ mutex_lock(&hidden_dentry->d_inode->i_mutex); ++ mutex_unlock(&hidden_dentry->d_inode->i_mutex); +#else + up(&hidden_dentry->d_inode->i_sem); +#endif diff --git a/target/linux/generic/patches-2.6.37/209-mini_fo.patch b/target/linux/generic/patches-2.6.37/209-mini_fo.patch index a6566beb96..065f186d5b 100644 --- a/target/linux/generic/patches-2.6.37/209-mini_fo.patch +++ b/target/linux/generic/patches-2.6.37/209-mini_fo.patch @@ -3456,7 +3456,7 @@ + err = hidden_dentry->d_inode->i_op->getxattr(hidden_dentry, encoded_name, encoded_value, size); + /* unlock_kernel() will be done by caller. */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -+ mutex_lock(&hidden_dentry->d_inode->i_mutex); ++ mutex_unlock(&hidden_dentry->d_inode->i_mutex); +#else + up(&hidden_dentry->d_inode->i_sem); +#endif