Messages in this thread |  | | From | Andreas Dilger <> | Subject | Re: ramfs problem... (unlink of sparse file in "D" state) | Date | Mon, 8 Jan 2001 13:38:39 -0700 (MST) |
| |
Al Viro writes: > Andreas Dilger wrote: > > Actually, this is wrong. The ext2 inode limit is 2^32 512-byte sectors, > > not 2^32 blocksize blocks. Yes this is a wart and Ted wants to fix it, as > > ??? Where? Oh, wait... ->i_blocks? I'ld rather refuse to grow past 2^32 - > sparse files can legitimately have large offsets and very low ->i_blocks. > But yes, we need to check for overflows. BTW, 2^32-1 is not good enough - > indirect blocks also contribute, so limiting ->i_size by 2Tb is not > guaranteed to keep ->i_blocks low.
Yes, I was thinking i_blocks, but you are correct - I wasn't accounting for the indirect blocks. This limit is still {2,4,8,16} times smaller than the limit you were calculating for i_size. If we do the i_blocks limit checking at block allocation time (for large sparse files) this is even better, but so far it wasn't done...
Cheers, Andreas -- Andreas Dilger \ "If a man ate a pound of pasta and a pound of antipasto, \ would they cancel out, leaving him still hungry?" http://www-mddsp.enel.ucalgary.ca/People/adilger/ -- Dogbert - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |