reiserfs: fixup transaction size check for old filesystems [RESEND]
Hello!
It turned out that recently introduced additional journal check breaks journal replays on filesystems created with old reiserfs tools that did not write journal parameters into superblock.
Please pull from bk://thebsh.namesys.com/bk/reiser3-linux-2.4-jcheck-fix
Diffstat:
journal.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-)
Plain text patch:
# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
# ChangeSet 1.1101 -> 1.1102
# fs/reiserfs/journal.c 1.26 -> 1.27
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 03/04/08 [email protected] 1.1102
# reiserfs: Fix recenly introduced journal sanity check that breaks replay on old filesystems.
# This fixes recently introduced transaction length check. Our # initial checks missed the case of filesystem created with old # reiserfsprogs that do not write max transaction length into # superblock. Zeroes were written there, so all transactions were # considered invalid.
# --------------------------------------------
#
fs/reiserfs/journal.c +1 -1
@@ -1401,7 +1401,7 @@ *newest_mount_id) ;return -1 ; } -if (le32_to_cpu (desc->j_len) >sb_journal_trans_max (SB_DISK_SUPER_BLOCK (p_s_sb)) ) { +if (le32_to_cpu (desc->j_len) >JOURNAL_TRANS_MAX ) {reiserfs_warning ("journal-2018: Bad transaction length %d encountered, ignoring transaction\n" ,le32_to_cpu (desc->j_len));return -1 ; }