[Bug 5096] Value too large for defined data type
bugzilla at busybox.net
bugzilla at busybox.net
Wed Dec 5 01:18:27 UTC 2012
https://bugs.busybox.net/show_bug.cgi?id=5096
--- Comment #5 from Denys Vlasenko <vda.linux at googlemail.com> 2012-12-05 01:18:24 UTC ---
(In reply to comment #3)
> BusyBox v1.20.2 shows "Value too large for defined data type" by "df" applet.
> This only if a dav2fs share is mounted. This worked some while ago
>
>
> strace -f /bin/df
> ...
> statfs("/proc/fs/nfsd", {f_type=0x6e667364, f_bsize=4096, f_blocks=0,
> f_bfree=0, f_bavail=0, f_files=0, f_ffree=0, f_fsid={0, 0}, f_namelen=0}) = 0
> statfs("/var/media/autofs", {f_type=0x187, f_bsize=4096, f_blocks=0, f_bfree=0,
> f_bavail=0, f_files=0, f_ffree=0, f_fsid={0, 0}, f_namelen=0}) = 0
> statfs("/var/media/autofs/GMX", 0x7fb59f28) = -1 EOVERFLOW (Value too large for
> defined data type)
Hmm.
The problem is that it uses statfs syscall, not statfs64.
But C source uses statfs _function_ call, not _syscall_,
it's the duty of libc to use correct _syscall_.
I just verified on my machine that glibc uses statfs64 syscall
to implement statfs (with LFS=y), but, for example, uclibc
uses statfs (and is probably prone to the same failure you see).
--
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the busybox-cvs
mailing list