CIFS mounted drive issue
J. Schneider
yankee at cell.de
Fri Apr 30 10:22:44 UTC 2010
Hi all,
as Yegor wrote last month I go the same behavior on openwrt r21196 and
tested on mips (ar7161 routerboard 450G) with:
kernel 2.6.3.32.12 and 2.6.33.3
uclibc 0.9.30.x and 0.9.31
After mounting a w2k3 or w2k8 share with mount.cifs, ls -la breaks with:
ls: can't open '/mnt': Value too large for defined data type
root at OpenWrt:/tmp# strace ls -al
......
stat("/lib/ld-uClibc.so.0", {st_mode=S_IFREG|0755, st_size=20708, ...}) = 0
mprotect(0x2ab7b000, 4096, PROT_READ) = 0
mprotect(0x2aabc000, 4096, PROT_READ) = 0
ioctl(0, TIOCNXCL, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, TIOCNXCL, {B38400 opost isig icanon echo ...}) = 0
getuid() = 0
time([1272618468]) = 1272618468
ioctl(0, 0x40087468, 0x7fe1d3f8) = 0
ioctl(1, TIOCNXCL, {B38400 opost isig icanon echo ...}) = 0
lstat64(0x7fe1deeb, 0x7fe1d2d8) = 0
brk(0) = 0x47f000
brk(0x480000) = 0x480000
open("/mnt", O_RDONLY|O_NONBLOCK|O_DIRECTORY) = 3
fstat(3, 0x7fe1d250) = -1 EOVERFLOW (Value too large
for defined data type)
close(3) = 0
brk(0x481000) = 0x481000
ioctl(2147483647, TIOCNXCL, 0x7fe1d1d8) = -1 EBADF (Bad file descriptor)
brk(0x482000) = 0x482000
write(2, "ls: can't open '/mnt': Value too"..., 61ls: can't open '/mnt':
Value too large for defined data type
) = 61
exit(1) = ?
A samba share from a centos5 machine works fine.
root at OpenWrt:/tmp# strace ls -al /mnt
......
stat("/lib/ld-uClibc.so.0", {st_mode=S_IFREG|0755, st_size=20708, ...}) = 0
mprotect(0x2ab7b000, 4096, PROT_READ) = 0
mprotect(0x2aabc000, 4096, PROT_READ) = 0
ioctl(0, TIOCNXCL, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, TIOCNXCL, {B38400 opost isig icanon echo ...}) = 0
getuid() = 0
time([1272621607]) = 1272621607
ioctl(0, 0x40087468, 0x7f9c90c8) = 0
ioctl(1, TIOCNXCL, {B38400 opost isig icanon echo ...}) = 0
lstat64(0x463488, 0x7f9c8fa8) = 0
brk(0) = 0x47f000
brk(0x480000) = 0x480000
open(".", O_RDONLY|O_NONBLOCK|O_DIRECTORY) = 3
fstat(3, {st_mode=S_IFDIR|S_ISVTX|0777, st_size=340, ...}) = 0
fcntl(3, F_SETFD, FD_CLOEXEC) = 0
brk(0x481000) = 0x481000
getdents64(3, /* 17 entries */, 4096) = 488
brk(0x482000) = 0x482000
I'm happy for any hints
Many Thanks
Joerg
More information about the uClibc
mailing list