sendto: Invalid argument
Fernando Rodriguez
fernando at elec.gla.ac.uk
Thu May 17 14:18:42 UTC 2007
As further information, I did an strace to ping 127.0.0.1, below is what
I got.
I am particularly interested in the line (alhtough this might not be the
cause for the error)
SYS_290(0x4, 0xbeedeb74, 0x40, 0, 0xb1a60) = -1 EINVAL (Invalid argument)
Maybe this is a kernel issue. I am running:
# uname -a
Linux uclibc 2.6.14-uc0 #4 Thu May 17 12:19:44 BST 2007 armv4tl unknown
However, note that I have selected to compile against my kernel source
header files and it makes no difference.
Strace output:
execve("/bin/ping", ["ping", "127.0.0.1"], [/* 15 vars */]) = 0
mmap2(NULL, 20, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x400
05000
stat("/etc/ld.so.cache", {st_mode=S_IFREG|0644, st_size=862, ...}) = 0
open("/etc/ld.so.cache", O_RDONLY) = 4
mmap2(NULL, 862, PROT_READ, MAP_SHARED, 4, 0) = 0x40006000
close(4) = 0
open("/lib/libcrypt.so.0", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=12892, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x4
0007000
read(4, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\240\4\0\000"...,
4096) =
4096
mmap2(NULL, 118784, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x4000e000
mmap2(0x4000e000, 9168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 4,
0) = 0x4
000e000
mmap2(0x40018000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4,
0x2) =
0x40018000
mmap2(0x40019000, 70864, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYM
OUS, -1, 0) = 0x40019000
close(4) = 0
munmap(0x40007000, 4096) = 0
open("/lib/libm.so.0", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=45812, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x4
0007000
read(4, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\320\22\0"...,
4096) = 40
96
mmap2(NULL, 81920, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4002b000
mmap2(0x4002b000, 42036, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 4,
0) = 0x
4002b000
mmap2(0x4003d000, 4100, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4,
0xa) =
0x4003d000
close(4) = 0
munmap(0x40007000, 4096) = 0
open("/lib/libgcc_s.so.1", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=30252, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x4
0007000
read(4, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0X\25\0\000"...,
4096) = 4
096
mmap2(NULL, 65536, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4003f000
mmap2(0x4003f000, 28792, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 4,
0) = 0x
4003f000
mmap2(0x4004e000, 540, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4,
0x7) = 0
x4004e000
close(4) = 0
munmap(0x40007000, 4096) = 0
open("/lib/libc.so.0", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=305744, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x4
0007000
read(4, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0 \253\0\000"...,
4096) =
4096
mmap2(NULL, 356352, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x4004f000
mmap2(0x4004f000, 301804, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 4,
0) = 0
x4004f000
mmap2(0x400a0000, 5172, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4,
0x49) =
0x400a0000
mmap2(0x400a2000, 16020, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYM
OUS, -1, 0) = 0x400a2000
close(4) = 0
munmap(0x40007000, 4096) = 0
open("/lib/libc.so.0", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=305744, ...}) = 0
close(4) = 0
open("/lib/libc.so.0", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=305744, ...}) = 0
close(4) = 0
open("/lib/libc.so.0", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=305744, ...}) = 0
close(4) = 0
munmap(0x40006000, 862) = 0
stat("/lib/ld-uClibc.so.0", {st_mode=S_IFREG|0755, st_size=21096, ...}) = 0
mprotect(0x40018000, 4096, PROT_READ) = 0
mprotect(0x4003d000, 4096, PROT_READ) = 0
mprotect(0x400a0000, 4096, PROT_READ) = 0
mprotect(0x4000c000, 4096, PROT_READ) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B115200 opost isig icanon echo
...}) =
0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B115200 opost isig icanon echo
...}) =
0
getuid32() = 0
getgid32() = 0
getpid() = 762
brk(0) = 0xb4000
brk(0xb5000) = 0xb5000
write(1, "PING 127.0.0.1 (127.0.0.1): 56 d"..., 42) = 42
brk(0xb6000) = 0xb6000
open("/etc/protocols", O_RDONLY) = 4
ioctl(4, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbeedeabc) = -1 ENOTTY
(Inappropriate
ioctl for device)
brk(0xb7000) = 0xb7000
read(4, "# /etc/protocols:\n# $Id: protoco"..., 4096) = 1191
close(4) = 0
SYS_281(0x2, 0x3, 0x1, 0, 0xb4040) = 4
getuid32() = 0
setuid32(0) = 0
SYS_294(0x4, 0x1, 0x6, 0x990fc, 0x4) = 0
SYS_294(0x4, 0x1, 0x8, 0xbeedece4, 0x4) = 0
rt_sigaction(SIGINT, {0x54160, [INT], SA_RESTART|0x4000000}, {SIG_DFL},
8) = 0
gettimeofday({72, 408666}, NULL) = 0
SYS_290(0x4, 0xbeedeb74, 0x40, 0, 0xb1a60) = -1 EINVAL (Invalid argument)
write(2, "ping", 4) = 4
write(2, ": ", 2) = 2
write(2, "sendto", 6) = 6
write(2, ": ", 2) = 2
write(2, "Invalid argument", 16) = 16
write(2, "\n", 1) = 1
exit(1) = ?
--
Dr. Fernando Rodriguez <fernando at elec.gla.ac.uk>
Dept. of E&E Engineering voice: +44(0)141 330 4108
University of Glasgow FAX: +44(0)141 330 4907
Glasgow G12 8LT
Just put the carbon back where you found it.
More information about the uClibc
mailing list