[uClinux-dev] NIOS - hangs on using telnet, ping works

Maciej Witaszek M.Witaszek at elka.pw.edu.pl
Sun Aug 21 12:47:11 EDT 2005


Hi,
I about to finish porting uClinux for NIOS. The board has 64 MB SDRAM 
memory and CS8900 ehternet module.
The root file system is ROMfs that I put into SDRAM.
Most of the things work, like running apps in bFLT format.
But main problem I have with network.
I can ping other host in the local network and in the Internet.
For now only numerical IP I don't test name resolve.
The other host can ping my board. And arp packets are send and
received correctly.
But when I use telnet the whole board hangs. The same happen
with ftp and wget.
It looks that it hangs on send function. Below there is a strace log
for running telnet.
(I hope that strace tool works correct :) )

Any help will be appreciated.
Best regards,
Maciek

/var> strace telnet 10.0.0.5 80
Load /bin/strace: TEXT=7e00040-7e17110 DATA=7e17110-7e27f40 
BSS=7e27f40-7e3c424
start_thread(regs=0x651dfb0, entry=0x7e00040, start_stack=0x7e7ff6c)
execve("/bin/telnet", ["telnet", "10.0.0.5", "80"], [/* 3 vars */]) = 0
Load /bin/telnet: TEXT=7700040-7713640 DATA=7713640-7719570 
BSS=7719570-7722bd4
start_thread(regs=0x77b7fb0, entry=0x7700040, start_stack=0x777ff78)
ioctl(0, SNDCTL_TMR_TIMEBASE, {B115200 opost isig icanon echo ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE, {B115200 opost isig icanon echo ...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE, {B115200 opost isig icanon echo ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_ANONYMOUS, 0, 0) 
= 0x6519000
open("/etc/hosts", O_RDONLY)            = -1 ENOENT (No such file or 
directory)
open("/etc/config/hosts", O_RDONLY)     = -1 ENOENT (No such file or 
directory)
write(1, "Trying 10.0.0.5(20480)...\n", 26Trying 10.0.0.5(20480)...
) = 26
socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 3
getuid()                                = 0
setuid(0)                               = 0
setsockopt(3, SOL_IP, IP_TOS, [16], 4)  = 0
connect(3, {sin_family=AF_INET, sin_port=htons(80), 
sin_addr=inet_addr("10.0.0.5")}}, 16) = 0
open("/.telnetrc", O_RDONLY)            = -1 ENOENT (No such file or 
directory)
write(1, "Connected to 10.0.0.5.\n", 23Connected to 10.0.0.5.
) = 23
write(1, "Escape character is \'^]\'.\n", 26Escape character is '^]'.
) = 26
rt_sigaction(SIGINT, {0x3b822cc, [INT], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {0x3b822f1, [QUIT], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGPIPE, {0x3b822b7, [PIPE], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGWINCH, {0x3b82335, [WINCH], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTSTP, {0x3b82312, [TSTP], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTSTP, {0x3b82312, [TSTP], SA_RESTART}, {0x3b82312, [TSTP], 
SA_RESTART}, 8) = 0
ioctl(0, SNDCTL_TMR_STOP, {B115200 opost isig icanon echo ...}) = 0
ioctl(0, 0x5421, [1])                   = 0
ioctl(1, 0x5421, [1])                   = 0
ioctl(3, 0x5421, [1])                   = 0
setsockopt(3, SOL_SOCKET, SO_OOBINLINE, [1], 4) = 0
select(16, [0 3], [], [3], {0, 0})      = 0 (Timeout)
select(16, [0 3], [], [3], NULLGET / 100
)        = 1 (in [0])
read(0, "GET / 100\n", 4096)            = 10
select(16, [0 3], [3], [3], {0, 0})     = 1 (out [3], left {0, 0})
send(3, "GET / 100\r\n", 11, 0

<- and here it hangs




More information about the uClinux-dev mailing list