"Theodore Y. Ts'o" wrote:
> 
>    Date: Mon, 10 Jan 2000 10:24:21 +0000 (GMT)
>    From: Tigran Aivazian <[EMAIL PROTECTED]>
> 
>    So, it would seem to me that you either did not answer Manfred's question
>    about what happens if one transfers a large (>2T) ext2 filesystem (with no
>    large >2G files ever created in it) to i386 or you answered it in a way I
>    did not understand.
> 
> The ext2 filesystem uses 32 bit unsigned block pointers regardless of
> whether it's on a 32-bit system or a 64-bit system.  Hence, the question
> doesn't make any sense (which is why I assumed you were talking about
> file sizes and not overall filesystem size).  It will work just fine,
> because nothing is changing.

Ok. Let me explain it again:
Someone bought you four 1 Terrabyte SCSI drives. You join them into one
4 Terrabyte software-RAID0 set.
You attach that set to an Linux Alpha computer. 
The RAID tools _could_ allow you to format the disks as one huge ext2
disk. The on-disk format of ext2 supports a 4 TB volume.
You use these disks for a few weeks, then your Alpha breaks down. You
decide to attach these disks to your x86 computer.
Now the RAID tools MUST NOT mount the 4 TB disk array, or you'll destroy
your data.
[the calculation
        bh[i]->b_rsector = bh[i]->b_blocknr*(bh[i]->b_size>>9);
in ll_rw_blk.c would overflow]

I've already checked LVM, and the LVM utilities contain a safety check:
they do not allow you to create a volume > 1 terrabyte. I've not yet
checked if the raid tools contain such checks.

As a second safety net, I would add an additional check to the ext2
mount routines [ie do not mount disks > 2 TB on 32-bit platforms,
perhaps with a mount parameter to override it. We could remove it if we
know that it's safe]

--
        Manfred

Reply via email to