From mboxrd@z Thu Jan 1 00:00:00 1970 From: Richard Heycock Subject: Re: Bugs on big endian systems Date: Thu, 04 Mar 2004 12:55:34 +1100 Message-ID: <1078365334.1526.2.camel@boadicea> References: <4045D745.8070204@sysgo.com> <40464E3F.4030809@suse.com> <4046769A.9030806@namesys.com> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: list-help: list-unsubscribe: list-post: Errors-To: flx@namesys.com In-Reply-To: <4046769A.9030806@namesys.com> List-Id: Content-Type: text/plain; charset="us-ascii" To: Reiserfs-List@namesys.com On Thu, 2004-03-04 at 11:21, Hans Reiser wrote: > Thanks Jeff and Pavel. Nikita, send Pavel the usual agreement, and > we'll send to Linus unless someone finds an objection. Edward, read > this patch, test it on alpha, The Alpha is a little endian machine. rgh > and approve it. Elena, test it on x86. > > Hans > > Jeff Mahoney wrote: > > > -----BEGIN PGP SIGNED MESSAGE----- > > Hash: SHA1 > > > > > > Pavel - > > > > Thanks. The good news is that the filesystem wouldn't have panicked > > because of the SB_ONDISK_RESERVED_FOR_JOURNAL(s) bug. The bad news is > > that it wouldn't have mattered because the filesystem could never have > > been mounted anyway due to the journal header version mismatch. > > > > I'm surprised nobody's ever tried to mount a relocated journal enabled > > filesystem on a big endian machine. > > > > Hans - > > > > This bug appears in both 2.4 and 2.6 kernels and should be fixed in both. > > > > - -Jeff > > > > Pavel Bartusek wrote: > > | Hi list, > > | > > | The attached patch will fix the bugs which appears only on big endian > > | systems in the kernel 2.4.25. > > | > > | regards > > | > > | > > | Pavel Bartusek > > | Software Engineering > > | > > | SYSGO Real-Time Solutions AG | Embedded and Real-Time Software > > | Lise-Meitner-Str.15 > > | 89081 Ulm, Germany > > | > > | Voice: +49-731-9533-1295 > > | FAX: +49-731-94683-10 > > | www.sysgo.com | www.elinos.com | www.osek.de > > | > > | > > | > > ------------------------------------------------------------------------ > > | > > | --- linux.ori/fs/reiserfs/journal.c Mon Aug 25 13:44:43 2003 > > | +++ linux/fs/reiserfs/journal.c Wed Mar 3 13:26:23 2004 > > | @@ -2094,7 +2094,7 @@ > > | > > | /* make sure that journal matches to the super block */ > > | if (is_reiserfs_jr(rs) && > > | - jh->jh_journal.jp_journal_magic != sb_jp_journal_magic(rs)) { > > | + le32_to_cpu (jh->jh_journal.jp_journal_magic) != > > sb_jp_journal_magic(rs)) { > > | char jname[ 32 ]; > > | char fname[ 32 ]; > > | > > | @@ -2102,7 +2102,7 @@ > > | strcpy( fname, kdevname( p_s_sb->s_dev ) ); > > | printk("journal-460: journal header magic %x (device %s) does > > not " > > | "match magic found in super block %x (device %s)\n", > > | - jh->jh_journal.jp_journal_magic, jname, > > | + le32_to_cpu (jh->jh_journal.jp_journal_magic), jname, > > | sb_jp_journal_magic(rs), fname); > > | brelse (bhjh); > > | goto free_and_return; > > | --- linux.ori/include/linux/reiserfs_fs.h Mon Aug 25 13:44:44 2003 > > | +++ linux/include/linux/reiserfs_fs.h Wed Mar 3 13:25:45 2004 > > | @@ -219,7 +219,7 @@ > > | #define SB_ONDISK_JOURNAL_DEVICE(s) \ > > | le32_to_cpu ((SB_ONDISK_JP(s)->jp_journal_dev)) > > | #define SB_ONDISK_RESERVED_FOR_JOURNAL(s) \ > > | - le32_to_cpu > > ((SB_V1_DISK_SUPER_BLOCK(s)->s_reserved_for_journal)) > > | + le16_to_cpu > > ((SB_V1_DISK_SUPER_BLOCK(s)->s_reserved_for_journal)) > > | > > | #define is_block_in_log_or_reserved_area(s, block) \ > > | block >= SB_JOURNAL_1st_RESERVED_BLOCK(s) \ > > > > > > - -- > > Jeff Mahoney > > SuSE Labs > > jeffm@suse.com > > -----BEGIN PGP SIGNATURE----- > > Version: GnuPG v1.2.2 (GNU/Linux) > > Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org > > > > iD8DBQFARk4/LPWxlyuTD7IRAkIZAJ0VR8aYna2n3EK/BfZ2SBwKOe9OPQCfYzDH > > c8D4gSwDzr93HivtH2FMx5M= > > =Jj1U > > -----END PGP SIGNATURE----- > > > > -- "It is possible to make things of great complexity out of things that are very simple. There is no conservation of simplicity" -- Stephen Wolfram Richard Heycock tel : 0410 646 369 key fingerprint : 909D CBFA C669 AC2F A937 AFA4 661B 9D21 EAAB 4291