Re: 2.1GB File Size Limit

Alexander Kjeldaas (astor@fast.no)
Sat, 20 Feb 1999 06:06:08 +0100


On Fri, Feb 19, 1999 at 11:41:01PM -0500, Albert D. Cahalan wrote:
>
> Alexander Kjeldaas writes:
>
> > with the modification that I use the following stat64 structure
> > (in linux/include/asm-i386/stat.h). The kernel and glibc have
> > incompatible structures and instead of translating, I changed the
> > kernel structure:
>
> Don't do that. The glibc people made several mistakes, so they will
> need to change their struct stat anyway.
>

I know. It seems a bit broken, but from the glibc-maintainer I was
told that it was too late to fix this struct.

>
> > unsigned long st_ino;
>
> This is not large enough. Inode numbers must be 64-bit on i386 too.
> Many filesystems need this, including UDF. Tree-structured filesystems
> like Reiserfs and XFS work much better with huge inode numbers.
>

This type is called __ino64_t in glibc 2.1, but is defined to be
32-bits wide. I thought it was a typo..

> > unsigned long __unused4;
> > unsigned long __unused5;
> > };
>
> Perhaps this is not enough. Flags, inode version, dtime, author,
> alternate permission bits... I suggest at least 6 __u32 slots.
>

Maybe we could sneak in 64-bits for capabilities..

astor

-- 
 Alexander Kjeldaas, Fast Search & Transfer, Trondheim, Norway

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/