Re: [Ocfs2-devel] [PATCH 2/3] JBD2: Allow feature checks beforejournal recovery
From: Joel Becker
Date: Thu Aug 12 2010 - 13:44:29 EST
On Thu, Jul 22, 2010 at 03:04:16PM -0700, Patrick J. LoPresti wrote:
> Before we start accessing a huge (> 16 TiB) OCFS2 volume, we need to
> confirm that its journal supports 64-bit offsets. In particular, we
> need to check the journal's feature bits before recovering the journal.
>
> This is not possible with JBD2 at present, because the journal
> superblock (where the feature bits reside) is not loaded from disk until
> the journal is recovered.
>
> This patch loads the journal superblock in
> jbd2_journal_check_used_features() if it has not already been loaded,
> allowing us to check the feature bits before journal recovery.
>
> Signed-off-by: Patrick LoPresti <lopresti@xxxxxxxxx>
Dear jbd2 developers,
I've pushed this patch to the merge-window branch of ocfs2.git.
I'm ready to send it to Linus, but I need your OK.
Joel
> diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c
> index bc2ff59..5cfd8d4 100644
> --- a/fs/jbd2/journal.c
> +++ b/fs/jbd2/journal.c
> @@ -1365,6 +1365,10 @@ int jbd2_journal_check_used_features (journal_t *journal, unsigned long compat,
>
> if (!compat && !ro && !incompat)
> return 1;
> + /* Load journal superblock if it is not loaded yet. */
> + if (journal->j_format_version == 0 &&
> + journal_get_superblock(journal) != 0)
> + return 0;
> if (journal->j_format_version == 1)
> return 0;
>
>
> _______________________________________________
> Ocfs2-devel mailing list
> Ocfs2-devel@xxxxxxxxxxxxxx
> http://oss.oracle.com/mailman/listinfo/ocfs2-devel
--
Brain: I shall pollute the water supply with this DNAdefibuliser,
turning everyone into mindless slaves.
Pinky: What about the people who drink bottled water?
Brain: Pinky, people who pay 5 dollars for a bottle of water are
already mindless slaves.
Joel Becker
Consulting Software Developer
Oracle
E-mail: joel.becker@xxxxxxxxxx
Phone: (650) 506-8127
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/