summaryrefslogtreecommitdiffstats
path: root/fs/reiserfs/dir.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/reiserfs/dir.c')
-rw-r--r--fs/reiserfs/dir.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/reiserfs/dir.c b/fs/reiserfs/dir.c
index 48ca45c0c..ad184a145 100644
--- a/fs/reiserfs/dir.c
+++ b/fs/reiserfs/dir.c
@@ -51,6 +51,8 @@ int reiserfs_dir_fsync(struct file *filp, struct dentry *dentry, int datasync) {
int windex ;
struct reiserfs_transaction_handle th ;
+ lock_kernel();
+
journal_begin(&th, dentry->d_inode->i_sb, 1) ;
windex = push_journal_writer("dir_fsync") ;
reiserfs_prepare_for_journal(th.t_super, SB_BUFFER_WITH_SB(th.t_super), 1) ;
@@ -58,6 +60,8 @@ int reiserfs_dir_fsync(struct file *filp, struct dentry *dentry, int datasync) {
pop_journal_writer(windex) ;
journal_end_sync(&th, dentry->d_inode->i_sb, 1) ;
+ unlock_kernel();
+
return ret ;
}