Re: [PATCH 2/2] OCFS2: Allow huge (> 16 TiB) volumes to mount

From: Patrick J. LoPresti
Date: Mon Jul 12 2010 - 21:08:58 EST


On Mon, Jul 12, 2010 at 5:21 PM, Andreas Dilger <adilger@xxxxxxxxx> 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.

Are you suggesting I need to do this before my patch is accepted at
all? Or is this a refactoring that can happen later?

- Pat
--
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/