From: Dave Chinner <david@fromorbit.com>
To: "Patrick J. LoPresti" <lopresti@gmail.com>
Cc: Andreas Dilger <adilger@dilger.ca>,
ocfs2-devel@oss.oracle.com, linux-kernel@vger.kernel.org,
linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org
Subject: Re: [PATCH 2/2] OCFS2: Allow huge (> 16 TiB) volumes to mount
Date: Tue, 13 Jul 2010 11:25:06 +1000 [thread overview]
Message-ID: <20100713012506.GA30737@dastard> (raw)
In-Reply-To: <AANLkTikAEycm5PKTLPuRFcB0e4qNp5EuQbKUx5aruNrh@mail.gmail.com>
On Mon, Jul 12, 2010 at 06:08:51PM -0700, Patrick J. LoPresti wrote:
> On Mon, Jul 12, 2010 at 5:21 PM, Andreas Dilger <adilger@dilger.ca> wrote:
> > On 2010-07-11, at 11:04, Patrick J. LoPresti wrote:
> > >
> >> + /* Absolute addressability check (borrowed from ext4/super.c) */
> >> + if ((max_block >
> >> + (sector_t)(~0LL) >> (osb->sb->s_blocksize_bits - 9)) ||
> >> + (max_block > (pgoff_t)(~0LL) >> (PAGE_CACHE_SHIFT -
> >> + osb->sb->s_blocksize_bits))) {
> >> + mlog(ML_ERROR, "Volume too large "
> >> + "to mount safely on this system");
> >> + status = -EFBIG;
> >> + goto out;
> >> + }
> >
> > This hunk of code is actually in several filesystems. It wouldn't be a bad idea to make it a library function that can be called by the filesystem to check the kernel page cache and block layer can handle these large filesystems.
>
> True, but some of them do it differently (e.g. see the #if switch in
> xfs_sb_validate_fsb_count). Tracking down all variants and changing
> them is a much larger task than my simple patch.
The XFS code is different to the above because there is still a 16TB
size limit on 32 bit systemsi (i.e. page cache address limits). IOWs,
you can't just remove the above 16TB check unless you (i.e. OCFS2)
handle >16TB block devices on 32 bit systems correctly...
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: Dave Chinner <david@fromorbit.com>
To: "Patrick J. LoPresti" <lopresti@gmail.com>
Cc: Andreas Dilger <adilger@dilger.ca>,
ocfs2-devel@oss.oracle.com, linux-kernel@vger.kernel.org,
linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org
Subject: [Ocfs2-devel] [PATCH 2/2] OCFS2: Allow huge (> 16 TiB) volumes to mount
Date: Tue, 13 Jul 2010 11:25:06 +1000 [thread overview]
Message-ID: <20100713012506.GA30737@dastard> (raw)
In-Reply-To: <AANLkTikAEycm5PKTLPuRFcB0e4qNp5EuQbKUx5aruNrh@mail.gmail.com>
On Mon, Jul 12, 2010 at 06:08:51PM -0700, Patrick J. LoPresti wrote:
> On Mon, Jul 12, 2010 at 5:21 PM, Andreas Dilger <adilger@dilger.ca> wrote:
> > On 2010-07-11, at 11:04, Patrick J. LoPresti wrote:
> > >
> >> + ? ? /* Absolute addressability check (borrowed from ext4/super.c) */
> >> + ? ? if ((max_block >
> >> + ? ? ? ? ?(sector_t)(~0LL) >> (osb->sb->s_blocksize_bits - 9)) ||
> >> + ? ? ? ? (max_block > (pgoff_t)(~0LL) >> (PAGE_CACHE_SHIFT -
> >> + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?osb->sb->s_blocksize_bits))) {
> >> + ? ? ? ? ? ? mlog(ML_ERROR, "Volume too large "
> >> + ? ? ? ? ? ? ? ? ?"to mount safely on this system");
> >> + ? ? ? ? ? ? status = -EFBIG;
> >> + ? ? ? ? ? ? goto out;
> >> + ? ? }
> >
> > This hunk of code is actually in several filesystems. ?It wouldn't be a bad idea to make it a library function that can be called by the filesystem to check the kernel page cache and block layer can handle these large filesystems.
>
> True, but some of them do it differently (e.g. see the #if switch in
> xfs_sb_validate_fsb_count). Tracking down all variants and changing
> them is a much larger task than my simple patch.
The XFS code is different to the above because there is still a 16TB
size limit on 32 bit systemsi (i.e. page cache address limits). IOWs,
you can't just remove the above 16TB check unless you (i.e. OCFS2)
handle >16TB block devices on 32 bit systems correctly...
Cheers,
Dave.
--
Dave Chinner
david at fromorbit.com
WARNING: multiple messages have this Message-ID (diff)
From: Dave Chinner <david@fromorbit.com>
To: "Patrick J. LoPresti" <lopresti@gmail.com>
Cc: Andreas Dilger <adilger@dilger.ca>,
ocfs2-devel@oss.oracle.com, linux-kernel@vger.kernel.org,
linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org
Subject: Re: [PATCH 2/2] OCFS2: Allow huge (> 16 TiB) volumes to mount
Date: Tue, 13 Jul 2010 11:25:06 +1000 [thread overview]
Message-ID: <20100713012506.GA30737@dastard> (raw)
In-Reply-To: <AANLkTikAEycm5PKTLPuRFcB0e4qNp5EuQbKUx5aruNrh@mail.gmail.com>
On Mon, Jul 12, 2010 at 06:08:51PM -0700, Patrick J. LoPresti wrote:
> On Mon, Jul 12, 2010 at 5:21 PM, Andreas Dilger <adilger@dilger.ca> wrote:
> > On 2010-07-11, at 11:04, Patrick J. LoPresti wrote:
> > >
> >> + /* Absolute addressability check (borrowed from ext4/super.c) */
> >> + if ((max_block >
> >> + (sector_t)(~0LL) >> (osb->sb->s_blocksize_bits - 9)) ||
> >> + (max_block > (pgoff_t)(~0LL) >> (PAGE_CACHE_SHIFT -
> >> + osb->sb->s_blocksize_bits))) {
> >> + mlog(ML_ERROR, "Volume too large "
> >> + "to mount safely on this system");
> >> + status = -EFBIG;
> >> + goto out;
> >> + }
> >
> > This hunk of code is actually in several filesystems. It wouldn't be a bad idea to make it a library function that can be called by the filesystem to check the kernel page cache and block layer can handle these large filesystems.
>
> True, but some of them do it differently (e.g. see the #if switch in
> xfs_sb_validate_fsb_count). Tracking down all variants and changing
> them is a much larger task than my simple patch.
The XFS code is different to the above because there is still a 16TB
size limit on 32 bit systemsi (i.e. page cache address limits). IOWs,
you can't just remove the above 16TB check unless you (i.e. OCFS2)
handle >16TB block devices on 32 bit systems correctly...
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
next prev parent reply other threads:[~2010-07-13 1:25 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-11 17:03 [PATCH 1/2] JBD2: Allow feature checks before journal recovery Patrick J. LoPresti
2010-07-11 17:03 ` [Ocfs2-devel] " Patrick J. LoPresti
2010-07-11 17:04 ` [PATCH 2/2] OCFS2: Allow huge (> 16 TiB) volumes to mount Patrick J. LoPresti
2010-07-11 17:04 ` Patrick J. LoPresti
2010-07-11 17:04 ` [Ocfs2-devel] " Patrick J. LoPresti
2010-07-13 0:21 ` Andreas Dilger
2010-07-13 0:21 ` [Ocfs2-devel] " Andreas Dilger
2010-07-13 1:08 ` Patrick J. LoPresti
2010-07-13 1:08 ` Patrick J. LoPresti
2010-07-13 1:08 ` [Ocfs2-devel] " Patrick J. LoPresti
2010-07-13 1:25 ` Dave Chinner [this message]
2010-07-13 1:25 ` Dave Chinner
2010-07-13 1:25 ` [Ocfs2-devel] " Dave Chinner
2010-07-13 1:37 ` Patrick J. LoPresti
2010-07-13 1:37 ` [Ocfs2-devel] " Patrick J. LoPresti
2010-07-13 4:46 ` Andreas Dilger
2010-07-13 4:46 ` [Ocfs2-devel] " Andreas Dilger
2010-07-13 5:00 ` Patrick J. LoPresti
2010-07-13 5:00 ` Patrick J. LoPresti
2010-07-13 5:00 ` [Ocfs2-devel] " Patrick J. LoPresti
2010-07-13 8:10 ` Joel Becker
2010-07-13 8:10 ` Joel Becker
2010-07-13 8:10 ` Joel Becker
2010-07-21 17:27 ` [PATCH 1/2] JBD2: Allow feature checks before journal recovery Jan Kara
2010-07-21 17:27 ` [Ocfs2-devel] " Jan Kara
2010-07-21 17:42 ` Patrick J. LoPresti
2010-07-21 17:42 ` Patrick J. LoPresti
2010-07-21 17:42 ` [Ocfs2-devel] " Patrick J. LoPresti
2010-07-21 17:50 ` Jan Kara
2010-07-21 17:50 ` Jan Kara
2010-07-21 17:50 ` [Ocfs2-devel] " Jan Kara
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=20100713012506.GA30737@dastard \
--to=david@fromorbit.com \
--cc=adilger@dilger.ca \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lopresti@gmail.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.