mount:nfsmount failed: Bad file descriptor

xiao.liang at cn.alps.com xiao.liang at cn.alps.com
Tue Aug 28 03:33:45 UTC 2007


When use strace the log is look like this:

root# cat mount.log
execve("/bin/mount", ["mount", "-t", "nfs", "192.168.1.6:/opt/Qtopia_2", 
"/opt/Qtopia_2"], [/* 10 vars */]) = 0
uname({sys="Linux", node="imx21", ...}) = 0
brk(0)                                  = 0xabeec
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 
0) = 0x40015000
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or 
directory)
open("/etc/ld.so.cache", O_RDONLY)      = -1 ENOENT (No such file or 
directory)
open("/lib/v5EJl/fast-mult/half/libcrypt.so.1", O_RDONLY) = -1 ENOENT (No 
such file or directory)
stat64("/lib/v5EJl/fast-mult/half", 0xbffff2bc) = -1 ENOENT (No such file 
or directory)
open("/lib/v5EJl/fast-mult/libcrypt.so.1", O_RDONLY) = -1 ENOENT (No such 
file or directory)
stat64("/lib/v5EJl/fast-mult", 0xbffff2bc) = -1 ENOENT (No such file or 
directory)
open("/lib/v5EJl/half/libcrypt.so.1", O_RDONLY) = -1 ENOENT (No such file 
or directory)
stat64("/lib/v5EJl/half", 0xbffff2bc)   = -1 ENOENT (No such file or 
directory)
open("/lib/v5EJl/libcrypt.so.1", O_RDONLY) = -1 ENOENT (No such file or 
directory)
stat64("/lib/v5EJl", 0xbffff2bc)        = -1 ENOENT (No such file or 
directory)
open("/lib/fast-mult/half/libcrypt.so.1", O_RDONLY) = -1 ENOENT (No such 
file or directory)
stat64("/lib/fast-mult/half", 0xbffff2bc) = -1 ENOENT (No such file or 
directory)
open("/lib/fast-mult/libcrypt.so.1", O_RDONLY) = -1 ENOENT (No such file 
or directory)
stat64("/lib/fast-mult", 0xbffff2bc)    = -1 ENOENT (No such file or 
directory)
open("/lib/half/libcrypt.so.1", O_RDONLY) = -1 ENOENT (No such file or 
directory)
stat64("/lib/half", 0xbffff2bc)         = -1 ENOENT (No such file or 
directory)
open("/lib/libcrypt.so.1", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\354\t\0\000"..., 
1024) = 1024
fstat64(3, {st_mode=S_IFREG|0755, st_size=19048, ...}) = 0
old_mmap(NULL, 210528, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 
0x4001d000
mprotect(0x40022000, 190048, PROT_NONE) = 0
old_mmap(0x40025000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 
3, 0) = 0x40025000
old_mmap(0x4002a000, 157280, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4002a000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\304{\1\000"..., 
1024) = 1024
fstat64(3, {st_mode=S_IFREG|0755, st_size=1149532, ...}) = 0
old_mmap(NULL, 1186360, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 
0x40051000
mprotect(0x40164000, 59960, PROT_NONE)  = 0
old_mmap(0x40169000, 28672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 
3, 0x110000) = 0x40169000
old_mmap(0x40170000, 10808, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40170000
close(3)                                = 0
stat64("/etc/busybox.conf", {st_mode=S_IFREG|0644, st_size=50, ...}) = 0
brk(0)                                  = 0xabeec
brk(0xaceec)                            = 0xaceec
brk(0)                                  = 0xaceec
brk(0xad000)                            = 0xad000
open("/etc/busybox.conf", O_RDONLY)     = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=50, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 
0) = 0x40016000
read(3, "[SUID]\n#su = ssx root.root\npassw"..., 4096) = 50
open("/etc/passwd", O_RDONLY)           = 4
fstat64(4, {st_mode=S_IFREG|0644, st_size=1629, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 
0) = 0x40017000
read(4, "root:x:0:0:root:/root:/bin/sh\nbi"..., 4096) = 1629
close(4)                                = 0
munmap(0x40017000, 4096)                = 0
open("/etc/group", O_RDONLY)            = 4
fstat64(4, {st_mode=S_IFREG|0644, st_size=652, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 
0) = 0x40017000
read(4, "root::0:root\nbin::1:root,bin,dae"..., 4096) = 652
close(4)                                = 0
munmap(0x40017000, 4096)                = 0
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40016000, 4096)                = 0
getuid32()                              = 0
getgid32()                              = 0
setgid32(0)                             = 0
setuid32(0)                             = 0
uname({sys="Linux", node="imx21", ...}) = 0
time(NULL)                              = 197
socket(PF_INET, SOCK_STREAM, IPPROTO_TCP) = 3
getpid()                                = 60
bind(3, {sa_family=AF_INET, sin_port=htons(660), 
sin_addr=inet_addr("0.0.0.0")}, 16) = 0
connect(3, {sa_family=AF_INET, sin_port=htons(111), 
sin_addr=inet_addr("192.168.1.6")}, 16) = -1 ETIMEDOUT (Connection timed 
out)
close(3)                                = 0
brk(0)                                  = 0xad000
brk(0xb1000)                            = 0xb1000
gettimeofday({386, 767720}, NULL)       = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 3
bind(3, {sa_family=AF_INET, sin_port=htons(661), 
sin_addr=inet_addr("0.0.0.0")}, 16) = 0
ioctl(3, FIONBIO, [1])                  = 0
setsockopt(3, SOL_IP, IP_RECVERR, [1], 4) = 0
uname({sys="Linux", node="imx21", ...}) = 0
geteuid32()                             = 0
getegid32()                             = 0
getgroups32(0x20, 0xbffff0bc)           = 0
gettimeofday({386, 811220}, NULL)       = 0
sendto(3, "]\234\333\177\0\0\0\0\0\0\0\2\0\1\206\245\0\0\0\1\0\0\0"..., 
88, 0, {sa_family=AF_INET, sin_port=htons(635), sin_addr=inet_addr8
poll([{fd=3, events=POLLIN}], 1, 3000)  = 0
ioctl(3, 0x8912, 0xbfffcecc)            = 0
ioctl(3, 0x8913, 0xbfffced4)            = 0
sendto(3, "]\234\333\177\0\0\0\0\0\0\0\2\0\1\206\245\0\0\0\1\0\0\0"..., 
88, 0, {sa_family=AF_INET, sin_port=htons(635), sin_addr=inet_addr8
poll([{fd=3, events=POLLIN}], 1, 3000)  = 0
ioctl(3, 0x8912, 0xbfffcecc)            = 0
ioctl(3, 0x8913, 0xbfffced4)            = 0
sendto(3, "]\234\333\177\0\0\0\0\0\0\0\2\0\1\206\245\0\0\0\1\0\0\0"..., 
88, 0, {sa_family=AF_INET, sin_port=htons(635), sin_addr=inet_addr8
poll([{fd=3, events=POLLIN}], 1, 3000)  = 0
ioctl(3, 0x8912, 0xbfffcecc)            = 0
ioctl(3, 0x8913, 0xbfffced4)            = 0
sendto(3, "]\234\333\177\0\0\0\0\0\0\0\2\0\1\206\245\0\0\0\1\0\0\0"..., 
88, 0, {sa_family=AF_INET, sin_port=htons(635), sin_addr=inet_addr8
poll([{fd=3, events=POLLIN}], 1, 3000)  = 0
ioctl(3, 0x8912, 0xbfffcecc)            = 0
ioctl(3, 0x8913, 0xbfffced4)            = 0
sendto(3, "]\234\333\177\0\0\0\0\0\0\0\2\0\1\206\245\0\0\0\1\0\0\0"..., 
88, 0, {sa_family=AF_INET, sin_port=htons(635), sin_addr=inet_addr8
poll([{fd=3, events=POLLIN}], 1, 3000)  = 0
ioctl(3, 0x8912, 0xbfffcecc)            = 0
ioctl(3, 0x8913, 0xbfffced4)            = 0
sendto(3, "]\234\333\177\0\0\0\0\0\0\0\2\0\1\206\245\0\0\0\1\0\0\0"..., 
88, 0, {sa_family=AF_INET, sin_port=htons(635), sin_addr=inet_addr8
poll([{fd=3, events=POLLIN}], 1, 3000)  = 0
ioctl(3, 0x8912, 0xbfffcecc)            = 0
ioctl(3, 0x8913, 0xbfffced4)            = 0
sendto(3, "]\234\333\177\0\0\0\0\0\0\0\2\0\1\206\245\0\0\0\1\0\0\0"..., 
88, 0, {sa_family=AF_INET, sin_port=htons(635), sin_addr=inet_addr8
poll([{fd=3, events=POLLIN}], 1, 3000)  = 0
ioctl(3, 0x8912, 0xbfffcecc)            = 0
ioctl(3, 0x8913, 0xbfffced4)            = 0
write(2, "mount: RPC: Timed out\n", 22) = 22
close(3)                                = 0
close(3)                                = -1 EBADF (Bad file descriptor)
write(2, "mount: ", 7)                  = 7
write(2, "nfsmount failed", 15)         = 15
write(2, ": Bad file descriptor\n", 22) = 22
write(2, "mount: ", 7)                  = 7
write(2, "Mounting 192.168.1.6:/opt/Qtopia"..., 58) = 58
write(2, ": Bad file descriptor\n", 22) = 22
_exit(1)                                = ?

When I use the same kernel and same busybox on an different board which is 
capable of mount nfs sucessfully, it mounts success !And I copy the libc 
and libcrypt library from the successful board to this failed board. With 
just the same kernel and busybox, it failed. I am confused! Help!

The nfs server say nothing when failed. And the NFS server seems to be 
version4. My kernel version is 2.4.20.




Denys Vlasenko <vda.linux at googlemail.com> 
08/27/2007 07:39 PM

宛先
busybox at busybox.net
cc
xiao.liang at cn.alps.com
件名
Re: mount:nfsmount failed: Bad file descriptor






On Monday 27 August 2007 08:48, xiao.liang at cn.alps.com wrote:
> Hi,
>    I have encoutered a problem when mount a nfs filesystem. The nfs
> server's ip is 192.168.1.6 and busybox version is 1.1.3. All the must
> configure features in busybox and kernel is turn on.
> CONFIG_FEATURE_MOUNT_NFS is set to y. And kernel's config CONFIG_NFS_FS,
> CONFIG_NFS_V3 are set to y. The command i use is
>
>  "mount -t nfs -o nolock,vers=2 102.168.1.6:/home/tom /home/tom",
>
> the error message is "
>
> mount:RPC: Timed out
> mount: nfsmount failed: Bad file descriptor
> mount :mounting ......................on /hom/tom failed:Bad file
> descriptor
>
> I have tried remove vers=2 and sth stupid of the command but that does 
not
> work, any suggestion is appreciate!

Try something more recent than 1.1.3.

Do "strace -o mount.log mount ....." and post mount.log to the mailing 
list.
--
vda

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.busybox.net/pipermail/busybox/attachments/20070828/441b681d/attachment-0002.htm 


More information about the busybox mailing list