reiserfs bug fix: add missing pair of lock_kernel()/unlock_kernel()

From: Vladimir Saveliev
Date: Thu Dec 23 2004 - 10:38:32 EST


Hello

Andrew, please apply this reiserfs bug fix.

This patch adds missing lock_kernel()/unlock_kernel() pair in reiserfs_get_dentry


fs/reiserfs/inode.c | 2 ++
1 files changed, 2 insertions(+)

diff -puN fs/reiserfs/inode.c~reiserfs-add-missing-lock_kernel fs/reiserfs/inode.c
--- linux-2.6.10-rc3-mm1/fs/reiserfs/inode.c~reiserfs-add-missing-lock_kernel 2004-12-23 18:23:53.557228800 +0300
+++ linux-2.6.10-rc3-mm1-vs/fs/reiserfs/inode.c 2004-12-23 18:23:53.583230368 +0300
@@ -1447,12 +1447,14 @@ struct dentry *reiserfs_get_dentry(struc

key.on_disk_key.k_objectid = data[0] ;
key.on_disk_key.k_dir_id = data[1] ;
+ reiserfs_write_lock(sb);
inode = reiserfs_iget(sb, &key) ;
if (inode && !IS_ERR(inode) && data[2] != 0 &&
data[2] != inode->i_generation) {
iput(inode) ;
inode = NULL ;
}
+ reiserfs_write_unlock(sb);
if (!inode)
inode = ERR_PTR(-ESTALE);
if (IS_ERR(inode))

_