<br><font size=2 face="sans-serif">When use strace the log is look like
this:</font>
<br>
<br><font size=2 face="sans-serif">root# cat mount.log</font>
<br><font size=2 face="sans-serif">execve("/bin/mount", ["mount",
"-t", "nfs", "192.168.1.6:/opt/Qtopia_2",
"/opt/Qtopia_2"], [/* 10 vars */]) = 0</font>
<br><font size=2 face="sans-serif">uname({sys="Linux", node="imx21",
...}) = 0</font>
<br><font size=2 face="sans-serif">brk(0)
= 0xabeec</font>
<br><font size=2 face="sans-serif">old_mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40015000</font>
<br><font size=2 face="sans-serif">open("/etc/ld.so.preload",
O_RDONLY) = -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">open("/etc/ld.so.cache", O_RDONLY)
= -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">open("/lib/v5EJl/fast-mult/half/libcrypt.so.1",
O_RDONLY) = -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">stat64("/lib/v5EJl/fast-mult/half",
0xbffff2bc) = -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">open("/lib/v5EJl/fast-mult/libcrypt.so.1",
O_RDONLY) = -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">stat64("/lib/v5EJl/fast-mult",
0xbffff2bc) = -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">open("/lib/v5EJl/half/libcrypt.so.1",
O_RDONLY) = -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">stat64("/lib/v5EJl/half",
0xbffff2bc) = -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">open("/lib/v5EJl/libcrypt.so.1",
O_RDONLY) = -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">stat64("/lib/v5EJl", 0xbffff2bc)
= -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">open("/lib/fast-mult/half/libcrypt.so.1",
O_RDONLY) = -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">stat64("/lib/fast-mult/half",
0xbffff2bc) = -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">open("/lib/fast-mult/libcrypt.so.1",
O_RDONLY) = -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">stat64("/lib/fast-mult", 0xbffff2bc)
= -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">open("/lib/half/libcrypt.so.1",
O_RDONLY) = -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">stat64("/lib/half", 0xbffff2bc)
= -1 ENOENT (No such file or directory)</font>
<br><font size=2 face="sans-serif">open("/lib/libcrypt.so.1",
O_RDONLY) = 3</font>
<br><font size=2 face="sans-serif">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</font>
<br><font size=2 face="sans-serif">fstat64(3, {st_mode=S_IFREG|0755, st_size=19048,
...}) = 0</font>
<br><font size=2 face="sans-serif">old_mmap(NULL, 210528, PROT_READ|PROT_EXEC,
MAP_PRIVATE, 3, 0) = 0x4001d000</font>
<br><font size=2 face="sans-serif">mprotect(0x40022000, 190048, PROT_NONE)
= 0</font>
<br><font size=2 face="sans-serif">old_mmap(0x40025000, 20480, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x40025000</font>
<br><font size=2 face="sans-serif">old_mmap(0x4002a000, 157280, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4002a000</font>
<br><font size=2 face="sans-serif">close(3)
= 0</font>
<br><font size=2 face="sans-serif">open("/lib/libc.so.6", O_RDONLY)
= 3</font>
<br><font size=2 face="sans-serif">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</font>
<br><font size=2 face="sans-serif">fstat64(3, {st_mode=S_IFREG|0755, st_size=1149532,
...}) = 0</font>
<br><font size=2 face="sans-serif">old_mmap(NULL, 1186360, PROT_READ|PROT_EXEC,
MAP_PRIVATE, 3, 0) = 0x40051000</font>
<br><font size=2 face="sans-serif">mprotect(0x40164000, 59960, PROT_NONE)
= 0</font>
<br><font size=2 face="sans-serif">old_mmap(0x40169000, 28672, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x110000) = 0x40169000</font>
<br><font size=2 face="sans-serif">old_mmap(0x40170000, 10808, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40170000</font>
<br><font size=2 face="sans-serif">close(3)
= 0</font>
<br><font size=2 face="sans-serif">stat64("/etc/busybox.conf",
{st_mode=S_IFREG|0644, st_size=50, ...}) = 0</font>
<br><font size=2 face="sans-serif">brk(0)
= 0xabeec</font>
<br><font size=2 face="sans-serif">brk(0xaceec)
=
0xaceec</font>
<br><font size=2 face="sans-serif">brk(0)
= 0xaceec</font>
<br><font size=2 face="sans-serif">brk(0xad000)
=
0xad000</font>
<br><font size=2 face="sans-serif">open("/etc/busybox.conf",
O_RDONLY) = 3</font>
<br><font size=2 face="sans-serif">fstat64(3, {st_mode=S_IFREG|0644, st_size=50,
...}) = 0</font>
<br><font size=2 face="sans-serif">old_mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40016000</font>
<br><font size=2 face="sans-serif">read(3, "[SUID]\n#su = ssx root.root\npassw"...,
4096) = 50</font>
<br><font size=2 face="sans-serif">open("/etc/passwd", O_RDONLY)
= 4</font>
<br><font size=2 face="sans-serif">fstat64(4, {st_mode=S_IFREG|0644, st_size=1629,
...}) = 0</font>
<br><font size=2 face="sans-serif">old_mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40017000</font>
<br><font size=2 face="sans-serif">read(4, "root:x:0:0:root:/root:/bin/sh\nbi"...,
4096) = 1629</font>
<br><font size=2 face="sans-serif">close(4)
= 0</font>
<br><font size=2 face="sans-serif">munmap(0x40017000, 4096)
= 0</font>
<br><font size=2 face="sans-serif">open("/etc/group", O_RDONLY)
= 4</font>
<br><font size=2 face="sans-serif">fstat64(4, {st_mode=S_IFREG|0644, st_size=652,
...}) = 0</font>
<br><font size=2 face="sans-serif">old_mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40017000</font>
<br><font size=2 face="sans-serif">read(4, "root::0:root\nbin::1:root,bin,dae"...,
4096) = 652</font>
<br><font size=2 face="sans-serif">close(4)
= 0</font>
<br><font size=2 face="sans-serif">munmap(0x40017000, 4096)
= 0</font>
<br><font size=2 face="sans-serif">read(3, "", 4096)
= 0</font>
<br><font size=2 face="sans-serif">close(3)
= 0</font>
<br><font size=2 face="sans-serif">munmap(0x40016000, 4096)
= 0</font>
<br><font size=2 face="sans-serif">getuid32()
=
0</font>
<br><font size=2 face="sans-serif">getgid32()
=
0</font>
<br><font size=2 face="sans-serif">setgid32(0)
=
0</font>
<br><font size=2 face="sans-serif">setuid32(0)
=
0</font>
<br><font size=2 face="sans-serif">uname({sys="Linux", node="imx21",
...}) = 0</font>
<br><font size=2 face="sans-serif">time(NULL)
=
197</font>
<br><font size=2 face="sans-serif">socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)
= 3</font>
<br><font size=2 face="sans-serif">getpid()
= 60</font>
<br><font size=2 face="sans-serif">bind(3, {sa_family=AF_INET, sin_port=htons(660),
sin_addr=inet_addr("0.0.0.0")}, 16) = 0</font>
<br><font size=2 face="sans-serif">connect(3, {sa_family=AF_INET, sin_port=htons(111),
sin_addr=inet_addr("192.168.1.6")}, 16) = -1 ETIMEDOUT (Connection
timed out)</font>
<br><font size=2 face="sans-serif">close(3)
= 0</font>
<br><font size=2 face="sans-serif">brk(0)
= 0xad000</font>
<br><font size=2 face="sans-serif">brk(0xb1000)
=
0xb1000</font>
<br><font size=2 face="sans-serif">gettimeofday({386, 767720}, NULL)
= 0</font>
<br><font size=2 face="sans-serif">socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP)
= 3</font>
<br><font size=2 face="sans-serif">bind(3, {sa_family=AF_INET, sin_port=htons(661),
sin_addr=inet_addr("0.0.0.0")}, 16) = 0</font>
<br><font size=2 face="sans-serif">ioctl(3, FIONBIO, [1])
= 0</font>
<br><font size=2 face="sans-serif">setsockopt(3, SOL_IP, IP_RECVERR, [1],
4) = 0</font>
<br><font size=2 face="sans-serif">uname({sys="Linux", node="imx21",
...}) = 0</font>
<br><font size=2 face="sans-serif">geteuid32()
=
0</font>
<br><font size=2 face="sans-serif">getegid32()
=
0</font>
<br><font size=2 face="sans-serif">getgroups32(0x20, 0xbffff0bc)
= 0</font>
<br><font size=2 face="sans-serif">gettimeofday({386, 811220}, NULL)
= 0</font>
<br><font size=2 face="sans-serif">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</font>
<br><font size=2 face="sans-serif">poll([{fd=3, events=POLLIN}], 1, 3000)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8912, 0xbfffcecc)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8913, 0xbfffced4)
= 0</font>
<br><font size=2 face="sans-serif">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</font>
<br><font size=2 face="sans-serif">poll([{fd=3, events=POLLIN}], 1, 3000)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8912, 0xbfffcecc)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8913, 0xbfffced4)
= 0</font>
<br><font size=2 face="sans-serif">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</font>
<br><font size=2 face="sans-serif">poll([{fd=3, events=POLLIN}], 1, 3000)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8912, 0xbfffcecc)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8913, 0xbfffced4)
= 0</font>
<br><font size=2 face="sans-serif">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</font>
<br><font size=2 face="sans-serif">poll([{fd=3, events=POLLIN}], 1, 3000)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8912, 0xbfffcecc)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8913, 0xbfffced4)
= 0</font>
<br><font size=2 face="sans-serif">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</font>
<br><font size=2 face="sans-serif">poll([{fd=3, events=POLLIN}], 1, 3000)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8912, 0xbfffcecc)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8913, 0xbfffced4)
= 0</font>
<br><font size=2 face="sans-serif">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</font>
<br><font size=2 face="sans-serif">poll([{fd=3, events=POLLIN}], 1, 3000)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8912, 0xbfffcecc)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8913, 0xbfffced4)
= 0</font>
<br><font size=2 face="sans-serif">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</font>
<br><font size=2 face="sans-serif">poll([{fd=3, events=POLLIN}], 1, 3000)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8912, 0xbfffcecc)
= 0</font>
<br><font size=2 face="sans-serif">ioctl(3, 0x8913, 0xbfffced4)
= 0</font>
<br><font size=2 face="sans-serif">write(2, "mount: RPC: Timed out\n",
22) = 22</font>
<br><font size=2 face="sans-serif">close(3)
= 0</font>
<br><font size=2 face="sans-serif">close(3)
= -1 EBADF (Bad file descriptor)</font>
<br><font size=2 face="sans-serif">write(2, "mount: ", 7)
= 7</font>
<br><font size=2 face="sans-serif">write(2, "nfsmount failed",
15) = 15</font>
<br><font size=2 face="sans-serif">write(2, ": Bad file descriptor\n",
22) = 22</font>
<br><font size=2 face="sans-serif">write(2, "mount: ", 7)
= 7</font>
<br><font size=2 face="sans-serif">write(2, "Mounting 192.168.1.6:/opt/Qtopia"...,
58) = 58</font>
<br><font size=2 face="sans-serif">write(2, ": Bad file descriptor\n",
22) = 22</font>
<br><font size=2 face="sans-serif">_exit(1)
= ?</font>
<br>
<br><font size=2 face="sans-serif">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!</font>
<br>
<br><font size=2 face="sans-serif">The nfs server say nothing when failed.
And the NFS server seems to be version4. My kernel version is 2.4.20.</font>
<br>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td width=40%><font size=1 face="sans-serif"><b>Denys Vlasenko <vda.linux@googlemail.com></b>
</font>
<p><font size=1 face="sans-serif">08/27/2007 07:39 PM</font>
<td width=59%>
<table width=100%>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">$B08@h(B</font></div>
<td><font size=1 face="sans-serif">busybox@busybox.net</font>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">cc</font></div>
<td><font size=1 face="sans-serif">xiao.liang@cn.alps.com</font>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">$B7oL>(B</font></div>
<td><font size=1 face="sans-serif">Re: mount:nfsmount failed: Bad file
descriptor</font></table>
<br>
<table>
<tr valign=top>
<td>
<td></table>
<br></table>
<br>
<br>
<br><tt><font size=2>On Monday 27 August 2007 08:48, xiao.liang@cn.alps.com
wrote:<br>
> Hi,<br>
> I have encoutered a problem when mount a nfs filesystem.
The nfs<br>
> server's ip is 192.168.1.6 and busybox version is 1.1.3. All the must<br>
> configure features in busybox and kernel is turn on.<br>
> CONFIG_FEATURE_MOUNT_NFS is set to y. And kernel's config CONFIG_NFS_FS,<br>
> CONFIG_NFS_V3 are set to y. The command i use is<br>
><br>
> "mount -t nfs -o nolock,vers=2 102.168.1.6:/home/tom /home/tom",<br>
><br>
> the error message is "<br>
><br>
> mount:RPC: Timed out<br>
> mount: nfsmount failed: Bad file descriptor<br>
> mount :mounting ......................on /hom/tom failed:Bad file<br>
> descriptor<br>
><br>
> I have tried remove vers=2 and sth stupid of the command but that
does not<br>
> work, any suggestion is appreciate!<br>
<br>
Try something more recent than 1.1.3.<br>
<br>
Do "strace -o mount.log mount ....." and post mount.log to the
mailing list.<br>
--<br>
vda<br>
</font></tt>
<br>