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 <[email protected]>
You can add:
Signed-off-by: Jan Kara <[email protected]>
BTW: The more appropriate audience for this patch is at
[email protected].
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 <[email protected]>
SuSE CR Labs
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]