Messages in this thread | | | Date | Wed, 18 Oct 2006 10:05:47 +0200 | From | Jan Kara <> | Subject | Re: [RFC] Patch to fix reiserfs bad path release panic on 2.6.19-rc1 |
| |
Hello,
> * fix reiserfs/inode.c : restart_transaction() to release the path in all cases. > > The restart_transaction() doesn't release the path when the the > journal handle has a refcount > 1. This would trigger a > reiserfs_panic() if we encounter an -ENOSPC / -EDQUOT in > reiserfs_get_block(). Yes, your analysis seems to be correct. I've looked at places where restart_transaction() is called and all expect path to be released.
> Signed-off-by: Suzuki K P <suzuki@in.ibm.com> You can add: Signed-off-by: Jan Kara <jack@suse.cz>
BTW: The more appropriate audience for this patch is at reiserfs-list@namesys.com.
Honza
> Index: linux-2.6.19-rc1/fs/reiserfs/inode.c > =================================================================== > --- linux-2.6.19-rc1.orig/fs/reiserfs/inode.c 2006-10-12 02:13:12.000000000 -0700 > +++ linux-2.6.19-rc1/fs/reiserfs/inode.c 2006-10-13 16:38:32.000000000 -0700 > @@ -216,11 +216,12 @@ > 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) {
-- Jan Kara <jack@suse.cz> SuSE CR Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |