diff --git a/fs/reiserfs/inode.c b/fs/reiserfs/inode.c index 9c69bcacad2286c1e7a926bf2a5000ae9d84da64..a625688de454b3f0505eff8eda037a28236b6013 100644 --- a/fs/reiserfs/inode.c +++ b/fs/reiserfs/inode.c @@ -216,11 +216,12 @@ static int file_capable(struct inode *inode, long block) BUG_ON(!th->t_trans_id); BUG_ON(!th->t_refcount); + pathrelse(path); + /* we cannot restart while nested */ if (th->t_refcount > 1) { return 0; } - pathrelse(path); reiserfs_update_sd(th, inode); err = journal_end(th, s, len); if (!err) {