Segmentation Fault
Michel Musslin
mmusslin at assystem.com
Mon Nov 8 16:09:25 CET 2010
Hello,
I actually try to cross compile freeradius 2.0.9 for powerpc. Everything
looks good during compilation, but we get "Segmentation Fault" on our
host when executing "radiusd -X".
Our setup is :
- EGLIBC 2.9
- GCC 4.3.2
- Linux 2.6.31
Could you please help me to find a way to solve this problem.
Here you can find strace and gdb log.
Michel M.
strace log :
sendto(4, "\0\0\0\24\0\26\3\1L\321-\374\0\0\0\0\0\0\0\0", 20, 0,
{sa_family=AF_NETLINK, pid=0, groups=00000000}, 12) = 20
recvmsg(4, {msg_name(12)={sa_family=AF_NETLINK, pid=0, groups=00000000},
msg_iov(1)=[{"\0\0\0000\0\24\0\2L\321-\374\0\0\7$\2\10\200\376\0\0\0\1\0\10\0\1\177\0\0\1"...,
4096}], msg_controllen=0, msg_flags=0}, 0) = 288
recvmsg(4, {msg_name(12)={sa_family=AF_NETLINK, pid=0, groups=00000000},
msg_iov(1)=[{"\0\0\0@\0\24\0\2L\321-\374\0\0\7$\n\200\200\376\0\0\0\1\0\24\0\1\0\0\0\0"...,
4096}], msg_controllen=0, msg_flags=0}, 0) = 128
recvmsg(4, {msg_name(12)={sa_family=AF_NETLINK, pid=0, groups=00000000},
msg_iov(1)=[{"\0\0\0\24\0\3\0\2L\321-\374\0\0\7$\0\0\0\0\0\0\0\1\0\24\0\1\0\0\0\0"...,
4096}], msg_controllen=0, msg_flags=0}, 0) = 20
close(4) = 0
fstat64(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(4, 64), ...}) = 0
ioctl(1, TCGETS, {B115200 opost isig icanon echo ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x48001000
open("/usr/local/lib/rlm_exec.la", O_RDONLY) = 4
fstat64(4, {st_mode=S_IFREG|0755, st_size=814, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x48002000
read(4, "# rlm_exec.la - a libtool librar"..., 4096) = 814
read(4, "", 4096) = 0
close(4) = 0
munmap(0x48002000, 4096) = 0
open("/usr/local/lib/libpthread.la", O_RDONLY) = -1 ENOENT (No such file
or directory)
open("/lib/libpthread.la", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("/usr/lib/libpthread.la", O_RDONLY) = -1 ENOENT (No such file or
directory)
access("/usr/local/lib/libpthread.so", R_OK) = -1 ENOENT (No such file
or directory)
access("/lib/libpthread.so", R_OK) = -1 ENOENT (No such file or
directory)
access("/usr/lib/libpthread.so", R_OK) = 0
futex(0x1016e378, FUTEX_WAKE_PRIVATE, 2147483647) = 0
open("/usr/lib/libpthread.so", O_RDONLY) = 4
read(4, "/* GNU ld script\n Use the shar"..., 512) = 219
close(4) = 0
open("/usr/local/lib/libresolv.la", O_RDONLY) = -1 ENOENT (No such file
or directory)
open("/lib/libresolv.la", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("/usr/lib/libresolv.la", O_RDONLY) = -1 ENOENT (No such file or
directory)
access("/usr/local/lib/libresolv.so", R_OK) = -1 ENOENT (No such file or
directory)
access("/lib/libresolv.so", R_OK) = -1 ENOENT (No such file or
directory)
access("/usr/lib/libresolv.so", R_OK) = 0
open("/usr/lib/libresolv.so", O_RDONLY) = 4
read(4,
"\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\0.X\0\0\0004"...,
512) = 512
fstat64(4, {st_mode=S_IFREG|0755, st_size=92607, ...}) = 0
mmap(0x6ffcb000, 150532, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
4, 0) = 0x6ffcb000
mprotect(0x6ffdd000, 61440, PROT_NONE) = 0
mmap(0x6ffec000, 8192, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x11000) = 0x6ffec000
mmap(0x6ffee000, 7172, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x6ffee000
close(4) = 0
open("/etc/ld.so.cache", O_RDONLY) = 4
fstat64(4, {st_mode=S_IFREG|0644, st_size=4841, ...}) = 0
mmap(NULL, 4841, PROT_READ, MAP_PRIVATE, 4, 0) = 0x48002000
close(4) = 0
open("/lib/libc.so.6", O_RDONLY) = 4
read(4,
"\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\1\356T\0\0\0004"...,
512) = 512
fstat64(4, {st_mode=S_IFREG|0755, st_size=1733649, ...}) = 0
mmap(0x6fe4f000, 1487896, PROT_READ|PROT_EXEC,
MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x6fe4f000
mprotect(0x6ffa4000, 61440, PROT_NONE) = 0
mmap(0x6ffb3000, 20480, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x154000) = 0x6ffb3000
mmap(0x6ffb8000, 9240, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x6ffb8000
close(4) = 0
open("/lib/ld.so.1", O_RDONLY) = 4
read(4,
"\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\1_x\0\0\0004"...,
512) = 512
fstat64(4, {st_mode=S_IFREG|0755, st_size=143055, ...}) = 0
mmap(0x6fe10000, 192148, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
4, 0) = 0x6fe10000
mprotect(0x6fe2e000, 61440, PROT_NONE) = 0
mmap(0x6fe3d000, 8192, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1d000) = 0x6fe3d000
close(4) = 0
mprotect(0x6fe3d000, 4096, PROT_READ) = 0
mprotect(0x6ffb3000, 8192, PROT_READ) = 0
mprotect(0x6ffec000, 4096, PROT_READ) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
gbd-radiusd.log :
* 1 process 1821 0x100da888 in add_to_global ()
Thread 1 (process 1821):
#0 0x100da888 in add_to_global ()
No locals.
#1 0x100db1e4 in dl_open_worker ()
No locals.
#2 0x100d8fa0 in _dl_catch_error ()
No locals.
#3 0x100da620 in _dl_open ()
No locals.
#4 0x10096428 in dlopen_doit ()
No locals.
#5 0x100d8fa0 in _dl_catch_error ()
No locals.
#6 0x10096828 in _dlerror_run ()
No locals.
#7 0x10096364 in __dlopen ()
No locals.
#8 0x10074d34 in dlopen ()
No locals.
#9 0x10074cdc in sys_dl_open (loader_data=<value optimized out>,
filename=0x1027d5b8 "/usr/lib/libresolv.so") at ltdl.c:1115
module = <value optimized out>
__FUNCTION__ = "sys_dl_open"
#10 0x10071db8 in tryall_dlopen (handle=0xbff58570,
filename=0x1027d5b8 "/usr/lib/libresolv.so", useloader=0x0) at
ltdl.c:2487
cur = (lt_dlhandle) 0x1027d528
loader = (lt_dlloader *) 0x1027d1e8
saved_error = 0x101341fc "file not found"
errors = <value optimized out>
#11 0x10074b40 in find_handle_callback (
filename=0x1027d5b8 "/usr/lib/libresolv.so", data=0xbff58570,
ignored=<value optimized out>) at ltdl.c:2844
notfound = 0
#12 0x10072b54 in foreach_dirinpath (search_path=<value optimized out>,
base_name=0x1027d4d0 "libresolv.so",
func=0x10074ae0 <find_handle_callback>, data1=0xbff58570, data2=0x0)
at ltdl.c:2767
lendir = 9
dir_name = 0x1027d515 "/usr/lib"
result = <value optimized out>
filenamesize = 22
lenbase = 12
argz_len = 14
argz = 0x1027d510 "/lib"
filename = 0x1027d5b8 "/usr/lib/libresolv.so"
canonical = 0x1027d4f8 "/lib:/usr/lib"
__PRETTY_FUNCTION__ = "foreach_dirinpath"
__FUNCTION__ = "foreach_dirinpath"
#13 0x10072d74 in find_handle (search_path=0x10134088 "/lib:/usr/lib",
base_name=0x1027d4d0 "libresolv.so", handle=0xbff58570) at ltdl.c:2867
__FUNCTION__ = "find_handle"
#14 0x10073d74 in try_dlopen (phandle=0xbff585d8,
filename=0x1027d4b8 "libresolv.so") at ltdl.c:3438
saved_error = 0x101341fc "file not found"
canonical = 0x1027d4d0 "libresolv.so"
base_name = 0x1027d4d0 "libresolv.so"
dir = 0x0
name = <value optimized out>
errors = 0
newhandle = (lt_dlhandle) 0x1027d528
__PRETTY_FUNCTION__ = "try_dlopen"
#15 0x10074a7c in lt_dlopenext (filename=<value optimized out>) at
ltdl.c:3606
handle = (lt_dlhandle) 0x1027d528
tmp = 0x1027d4b8 "libresolv.so"
len = 9
errors = <value optimized out>
__FUNCTION__ = "lt_dlopenext"
#16 0x100746e4 in try_dlopen (phandle=0xbff58678,
filename=<value optimized out>) at ltdl.c:3011
file = <value optimized out>
libdir = 0x1027cf58 "/usr/local/lib"
deplibs = 0x1027cf10 " /usr/local/lib/libfreeradius-radius.la -lnsl
-lresolv -lpthread"
line = <value optimized out>
line_len = <value optimized out>
dlname = 0x0
old_name = 0x1027d3e0 "librlm_exec.a"
installed = 1
saved_error = 0x0
canonical = 0x1027d3c0 "rlm_exec.la"
base_name = <value optimized out>
dir = 0x1027d5a0 "/usr/local/lib"
name = 0x1027d3d0 "rlm_exec"
errors = <value optimized out>
newhandle = <value optimized out>
__PRETTY_FUNCTION__ = "try_dlopen"
#17 0x10074984 in lt_dlopenext (filename=<value optimized out>) at
ltdl.c:3564
handle = (lt_dlhandle) 0x1027cf70
tmp = 0x1027d3b0 "rlm_exec.la"
len = 8
errors = <value optimized out>
__FUNCTION__ = "lt_dlopenext"
#18 0x10012aac in find_module_instance (modules=<value optimized out>,
instname=0x1019362c "exec", do_link=1) at modules.c:491
check_config_safe = <value optimized out>
cs = (CONF_SECTION *) 0x10195bb0
name1 = <value optimized out>
node = (module_instance_t *) 0x1027d290
myNode = {
name = "exec\000\005¶`\020\031.\b\000\000\000\t¿õ\212@\020\000CÄ",
'\0' <repeats 20 times>, "\020\022\006´\020\031/þ\000\000\000
\000\000\000\000\000\000\000\000¿õ\212@\000\000\000\000\000\000\000\000\020\026-ø¿õ\220Ø\020\026\000\000\020\026\000\000\020\026.\b\020\021þ\034\000\000\000\000\020\002Y¸\020\021\224\004\020\026\000\000\020\021\234h\020\026\000\000\020\032 ¿õ\212\200\020\026ã|\000\000\000\024\020\026-ø¿õ\212\220\020\026\000\000\020\026\000\000\020\026-ø¿õ\220Ø\020\026\000\000\020\026\000\000\020\0314\200¿õ\212p\000\000\000\000\020\021¶ä\020\031\017\210¿õ\212\220\020\005¶\020\002\000\000\000¿õ\212¨\020\031"...,
entry = 0x10190f88, insthandle = 0x0, mutex = 0x0, cs = 0x10193480,
dead = 270077832, mh = 0x1019362c}
module_name =
"rlm_exec\000õ\206À\020\tCd\000\000\000\000\020\031û\020¿õ\206à\020\t.à\020\026\000\000\020\026.\b\020\026\000\000\000\000\000ÿH\000\003s\020\031û\020¿õ\206ð\020\t;\204\000\000\000\000\020\031û\020¿õ\2070\020\tI°\020\026\000\000\020\026.\b¿õ\211@\000\000\000\000\020\031\017h¿õ\207X¿õ\207
\020\021\224\004¿õ\207X\020\031&\210¿õ\207@\020\005¶\020\002\000ã|¿õ\207X¿õ\207\200\020\021\224\004\020\031%Ð\020\026-ø¿õ\220Ø\020\026\000\000\020\026\000\000\020\026.\b\020\026\000\000¿õ\207Ø\020\031%Ð\020\026\000\000¿õ\211\030\020\031&
\020\026;@\000\000\000\000"...
__FUNCTION__ = "find_module_instance"
#19 0x10012fec in setup_modules (reload=<value optimized out>,
config=0x10190f88) at modules.c:1542
ci = (CONF_ITEM *) 0x10193608
name = 0x1019362c "exec"
cs = (CONF_SECTION *) 0x10193540
modules = (CONF_SECTION *) 0x10193480
listener = <value optimized out>
__FUNCTION__ = "setup_modules"
#20 0x100106bc in read_mainconfig (reload=<value optimized out>)
at mainconfig.c:959
p = 0x10190f68 "/usr/local/etc/raddb"
cs = (CONF_SECTION *) 0x10190f88
statbuf = {st_dev = 2065, st_ino = 8163, st_mode = 16877,
st_nlink = 7, st_uid = 0, st_gid = 0, st_rdev = 0, __pad2 = 0,
st_size = 4096, st_blksize = 4096, st_blocks = 8, st_atim = {
tv_sec = 1288775159, tv_nsec = 0}, st_mtim = {tv_sec = 1288780664,
tv_nsec = 0}, st_ctim = {tv_sec = 1288780691, tv_nsec = 0},
__unused4 = 0,
__unused5 = 0}
cc = <value optimized out>
buffer = "/usr/local/etc/raddb/radiusd.conf", '\0' <repeats 711
times>, "¿õ\217°", '\0' <repeats 12 times>,
"¿õ\220ü\000\000\000!\000\000\000\000¿õ\220ø¿õ\220ð\020\006\226¤\020\006\235,\020\000\000\004",
'\0' <repeats 80 times>, "¿õ\2200", '\0' <repeats 12 times>,
"\020\026-\224\020\026éD¿õ\224\024\020\026öH¿õ\220 \020\ná\034", '\0'
<repeats 32 times>,
"\204\000\004h\020\026-ø¿õ\220°\020\026\000\000\020\t8è\000\000\000\000\020\026\000\000\000\000\000\000\020\026.°\020\021Ç\b\020\021Ë\214$\000\004l\020\026.°\020"...
__FUNCTION__ = "read_mainconfig"
#21 0x10015ac0 in main (argc=2, argv=0xbff59414) at radiusd.c:265
rcode = <value optimized out>
argval = <value optimized out>
spawn_flag = 0
dont_fork = 1
flag = 0
act = {__sigaction_handler = {sa_handler = 0, sa_sigaction = 0},
sa_mask = {__val = {0 <repeats 32 times>}}, sa_flags = 0, sa_restorer
= 0}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeradius.org/pipermail/freeradius-users/attachments/20101108/8721c043/attachment.html>
More information about the Freeradius-Users
mailing list