From: "Vladimir V. Saveliev" <vs@namesys.com>
To: Linux Tard <linuxtard@yahoo.com>
Cc: reiserfs-list@namesys.com, Chris Mason <mason@suse.com>,
Jeff Mahoney <jeffm@suse.com>
Subject: Re: Trying to mount ReiserFS file system read only results in change
Date: Fri, 23 Dec 2005 18:03:17 +0300 [thread overview]
Message-ID: <43AC11B5.1060803@namesys.com> (raw)
In-Reply-To: <20051222204321.639.qmail@web34606.mail.mud.yahoo.com>
[-- Attachment #1: Type: text/plain, Size: 3107 bytes --]
Hello
Linux Tard wrote:
> Hi Vladimar,
>
> Thank you again.
>
> --- "Vladimir V. Saveliev" <vs@namesys.com> wrote:
>>I do not think that this is a good way.
>>
>
> Why is this?
reiserfs used to increment mount id on each mount. Not updating it might confuse
code which relays on that fact: journal replay and/or reiserfsck.
> Is there something else other than
> preventing journal increment this would do? Again, we
> use this kernel only in certain situations.
>
>>I would propose the following patch.
>>
>> fs/reiserfs/journal.c | 1 +
>> 1 files changed, 1 insertion(+)
>>
>>diff -puN
>>
> fs/reiserfs/journal.c~reiserfs-dont-update-journla-header-mounting-readonly
>>fs/reiserfs/journal.c
>>---
>>
> linux-2.6.15-rc5-mm3/fs/reiserfs/journal.c~reiserfs-dont-update-journla-header-mounting-readonly
>>2005-12-20 13:09:28.000000000 +0300
>>+++ linux-2.6.15-rc5-mm3-vs/fs/reiserfs/journal.c
>>2005-12-20 13:10:51.000000000 +0300
>>@@ -2458,6 +2458,7 @@ static int journal_read(struct
>>super_blo
>> replay_count, get_seconds() - start);
>> }
>> if (!bdev_read_only(p_s_sb->s_bdev) &&
>>+ !(p_s_sb->s_flags & MS_RDONLY) &&
>> _update_journal_header_block(p_s_sb,
>>journal->j_start,
>> journal->j_last_flush_trans_id)) {
>> /* replay failed, caller must call
>>free_journal_ram and abort
>
> We not able to test this patch. We're using 2.4.32
> kernel. Output of patch;
>
> [root@dumb linux-2.4.32]# patch -p1 <
> reiserfs_dont_update_journla_header_mounting_readonly.patch
> --dry-run
> patching file fs/reiserfs/journal.c
> Hunk #1 FAILED at 2458.
> 1 out of 1 hunk FAILED -- saving rejects to file
> fs/reiserfs/journal.c.rej
> [root@dumb linux-2.4.32]#
>
> And the REJ file;
>
> [root@dumb reiserfs]# more journal.c.rej
> ***************
> *** 2458,2463 ****
> replay_count,
> get_seconds() - start);
> }
> if (!bdev_read_only(p_s_sb->s_bdev) &&
> _update_journal_header_block(p_s_sb,
> journal->j_start,
>
> journal->j_last_flush_trans_id)) {
> /* replay failed, caller must call
> free_journal_ram and abort
> --- 2458,2464 ----
> replay_count,
> get_seconds() - start);
> }
> if (!bdev_read_only(p_s_sb->s_bdev) &&
> + !(p_s_sb->s_flags & MS_RDONLY) &&
> _update_journal_header_block(p_s_sb,
> journal->j_start,
>
> journal->j_last_flush_trans_id)) {
> /* replay failed, caller must call
> free_journal_ram and abort
> [root@dumb reiserfs]#
>
>
>
>
>
> I'm guessing you made patch for 2.6 kernel? Or
> failure for some other reason?
yes, it was for 2.6. Please try the attached, it is for 2.4.32.
> We have to use 2.4 series kernel now. Would you be
> able to write this patch for 2.4 kernel if it was for
> 2.6?
>
> kind regards,
> -lt
>
>
>
>
>
> __________________________________
> Yahoo! for Good - Make a difference this year.
> http://brand.yahoo.com/cybergivingweek2005/
>
>
[-- Attachment #2: reiserfs-dont-update-journla-header-mounting-readonly.patch --]
[-- Type: text/plain, Size: 1051 bytes --]
This patch makes reiserfs to avoid journal header update when filesystem is being mounted readonly.
diff -puN fs/reiserfs/journal.c~reiserfs-dont-update-journla-header-mounting-readonly fs/reiserfs/journal.c
fs/reiserfs/journal.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletion(-)
diff -puN fs/reiserfs/journal.c~reiserfs-dont-update-journla-header-mounting-readonly fs/reiserfs/journal.c
--- linux-2.4.32/fs/reiserfs/journal.c~reiserfs-dont-update-journla-header-mounting-readonly 2005-12-23 17:54:14.222498915 +0300
+++ linux-2.4.32-vs/fs/reiserfs/journal.c 2005-12-23 17:57:46.063947196 +0300
@@ -1804,7 +1804,8 @@ start_log_replay:
printk("reiserfs: replayed %d transactions in %lu seconds\n", replay_count,
CURRENT_TIME - start) ;
}
- if (!is_read_only(p_s_sb->s_dev) &&
+ if (!is_read_only(p_s_sb->s_dev) &&
+ !(p_s_sb->s_flags & MS_RDONLY) &&
_update_journal_header_block(p_s_sb, SB_JOURNAL(p_s_sb)->j_start,
SB_JOURNAL(p_s_sb)->j_last_flush_trans_id))
{
_
next prev parent reply other threads:[~2005-12-23 15:03 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-10-14 15:21 Reiserfsck can't fix FS Thomas Raschbacher
2005-10-14 16:08 ` Vitaly Fertman
2005-10-16 17:40 ` Thomas Raschbacher
2005-10-16 23:37 ` evilninja
2005-10-17 19:34 ` michael chang
2005-10-19 11:27 ` Thomas Raschbacher
2005-10-19 20:17 ` evilninja
[not found] ` <b14e81f00510201255x3ee436afveb8222f43f69f8a@mail.gmail.com>
2005-12-11 7:21 ` Thomas Raschbacher
2005-12-12 18:22 ` Bedros Hanounik
2005-12-12 22:15 ` michael chang
[not found] ` <f18a8d980512121454q5170cc19i31c9aa3d653226fe@mail.gmail.com>
2005-12-15 12:09 ` Reiserfsck can't fix FS - part 2 Thomas Raschbacher
2005-12-15 12:21 ` Raymond A. Meijer
2005-12-15 13:34 ` Vladimir V. Saveliev
2005-12-15 20:24 ` Thomas Raschbacher
2005-12-16 7:43 ` Vladimir V. Saveliev
2005-12-16 15:14 ` Thomas Raschbacher
2005-12-19 9:33 ` Vladimir V. Saveliev
2005-12-20 7:24 ` Thomas Raschbacher
2005-12-20 8:14 ` Vladimir V. Saveliev
2005-12-22 13:55 ` Thomas Raschbacher
2005-12-22 14:38 ` Vladimir V. Saveliev
2005-12-23 14:29 ` Thomas Raschbacher
2005-12-28 0:48 ` Thomas Raschbacher
2005-12-19 0:37 ` Trying to mount ReiserFS file system read only results in change Linux Tard
2005-12-19 8:08 ` Vladimir V. Saveliev
2005-12-19 14:24 ` Linux Tard
2005-12-19 15:57 ` Vladimir V. Saveliev
2005-12-19 19:31 ` Linux Tard
2005-12-20 12:05 ` Vladimir V. Saveliev
2005-12-22 20:43 ` Linux Tard
2005-12-23 15:03 ` Vladimir V. Saveliev [this message]
2005-12-24 16:55 ` Linux Tard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=43AC11B5.1060803@namesys.com \
--to=vs@namesys.com \
--cc=jeffm@suse.com \
--cc=linuxtard@yahoo.com \
--cc=mason@suse.com \
--cc=reiserfs-list@namesys.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.