From: Joel Becker <Joel.Becker@oracle.com>
To: ocfs2-devel@oss.oracle.com
Subject: [Ocfs2-devel] Large (> 16TiB) volumes revisited
Date: Tue, 22 Jun 2010 18:36:34 -0700 [thread overview]
Message-ID: <20100623013633.GC20090@mail.oracle.com> (raw)
In-Reply-To: <AANLkTilj-EHDdqIN5SziVQXG3WGhvzWGxwKYXCwhTxnM@mail.gmail.com>
On Tue, Jun 22, 2010 at 06:12:01PM -0700, Patrick J. LoPresti wrote:
> On Tue, Jun 22, 2010 at 5:49 PM, Joel Becker <Joel.Becker@oracle.com> wrote:
> > On Tue, Jun 22, 2010 at 05:11:50PM -0700, Patrick J. LoPresti wrote:
> >
> > ? ? ? ?This patch is not sufficient. ?The journal options need to be
> > checked, as does the block addressing space of the kernel.
>
> OK. But I am new to this code base and would appreciate some pointers...
>
> Specifically:
>
> Which journal options? Are they visible at this point in super.c?
JBD2_FEATURE_INCOMPAT_64BIT. You'll need to call
jbd2_journal_check_used_features() to see if the journal has it enabled.
Before you can do that, you have to ensure that the filesystem has the
OCFS2_FEATURE_COMPAT_JBD2_SB feature enabled.
> By "block addressing space of the kernel", are we just talking
> sizeof(some_kernel_type) or something more involved?
sector_t. You can copy what ext4 did here.
2709 if ((ext4_blocks_count(es) >
2710 (sector_t)(~0ULL) >> (sb->s_blocksize_bits - 9)) ||
2711 (ext4_blocks_count(es) >
2712 (pgoff_t)(~0ULL) >> (PAGE_CACHE_SHIFT - sb->s_blocksize_bits)) ) {
2713 ext4_msg(sb, KERN_ERR, "filesystem"
2714 " too large to mount safely on this system");
blocks_count is, of course, the calculation we already perform
to turn di->i_clusters into how many blocks we have.
We must always fail if we can't address our disk in sector_t.
Once we've gotten past that check, we then need to figure out if our
journal can address our entire disk. So if our current test for ">
(u32)~0UL" returns true, one must then check for the 64BIT feature.
Joel
--
"You don't make the poor richer by making the rich poorer."
- Sir Winston Churchill
Joel Becker
Principal Software Developer
Oracle
E-mail: joel.becker at oracle.com
Phone: (650) 506-8127
next prev parent reply other threads:[~2010-06-23 1:36 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-23 0:11 [Ocfs2-devel] Large (> 16TiB) volumes revisited Patrick J. LoPresti
2010-06-23 0:49 ` Joel Becker
2010-06-23 1:12 ` Patrick J. LoPresti
2010-06-23 1:36 ` Joel Becker [this message]
2010-06-24 0:04 ` Patrick J. LoPresti
2010-06-24 0:14 ` Joel Becker
2010-06-24 0:45 ` Patrick J. LoPresti
2010-06-24 0:55 ` Joel Becker
2010-06-24 16:53 ` Patrick J. LoPresti
2010-06-24 23:53 ` Patrick J. LoPresti
2010-06-26 16:49 ` Patrick J. LoPresti
2010-06-27 19:02 ` Patrick J. LoPresti
2010-06-28 22:32 ` Patrick J. LoPresti
2010-06-29 0:47 ` Sunil Mushran
2010-06-29 1:15 ` Patrick J. LoPresti
2010-06-29 1:54 ` Sunil Mushran
2010-06-29 2:50 ` Patrick J. LoPresti
2010-06-29 4:21 ` Sunil Mushran
2010-06-29 19:43 ` Patrick J. LoPresti
2010-06-29 20:22 ` Sunil Mushran
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=20100623013633.GC20090@mail.oracle.com \
--to=joel.becker@oracle.com \
--cc=ocfs2-devel@oss.oracle.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.