Andreas Dilger <adilger@turbolinux.com> writes:
> Goswin writes:
> > ls does not show the correct size for files greater than 4G:
> >
> > % ls -ls file_greater_than_4G
> >
> > 8422534 -rw-rw-r-- 1 mrvn mrvn 1048576 Aug 25 23:14 file_greater_than_4G
> >
> > The wrong size seems to be a kernel problem:
> >
> > from /usr/src/linux/include/asm-i386/posix_types.h:
> > typedef long __kernel_off_t;
> >
> > from /usr/src/linux/include/types.h:
> > typedef __kernel_off_t off_t;
> ^^^^^
> > from /usr/src/linux/include/linux/fs.h: struct inode {
> > loff_t i_size;
> ^^^^^^
>
> from /usr/src/linux/include/asm-i386/posix_types.h:
> #ifdef __GNUC__
> typedef long long __kernel_loff_t;
> #endif
Oh, I misread that. sorry.
> It is unlikely that the internal size is incorrect, as people have used
> large files successfully. It may be that your "ls" is not using the
> full 64 bits. I have read reports of similar cases.
The ls definetly uses 8 Byte for the size. strace already shows the
wrong size being returned by stat.
So if its not the kernel and not ls it must be glibc.
May the Source be with you.
Goswin
-
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/
This archive was generated by hypermail 2b29 : Thu Aug 31 2000 - 21:00:16 EST