Here the output from a gdb session without any debugging symbols:
Core was generated by `cvsup'.
Program terminated with signal 4, Illegal instruction.
Reading symbols from /lib/libz.so.5...(no debugging symbols found)...done.
Loaded symbols for /lib/libz.so.5
Reading symbols from /lib/libm.so.5...(no debugging symbols found)...done.
Loaded symbols for /lib/libm.so.5
Reading symbols from /lib/libc.so.7...(no debugging symbols found)...done.
Loaded symbols for /lib/libc.so.7
Reading symbols from /libexec/ld-elf.so.1...(no debugging symbols found)...done.
Loaded symbols for /libexec/ld-elf.so.1
#0 0x00000008009edcf7 in gmtime_r () from /lib/libc.so.7
(gdb) bt
#0 0x00000008009edcf7 in gmtime_r () from /lib/libc.so.7
#1 0x00000008009ed79e in gmtime_r () from /lib/libc.so.7
#2 0x00000008009ee420 in gmtime_r () from /lib/libc.so.7
#3 0x00000008009ee638 in gmtime_r () from /lib/libc.so.7
#4 0x00000008009f1988 in _once () from /lib/libc.so.7
#5 0x00000008009ed41f in timeoff () from /lib/libc.so.7
#6 0x00000008009eeca7 in gmtime () from /lib/libc.so.7
#7 0x00000000004a643a in calloc ()
#8 0x000000000043aec7 in ?? ()
#9 0x0000000000448eaa in ?? ()
#10 0x0000000000409ece in ?? ()
#11 0x00000000004191a4 in ?? ()
#12 0x0000000000417cbe in ?? ()
#13 0x000000000041529f in ?? ()
#14 0x0000000000414d7a in ?? ()
#15 0x000000000049f980 in calloc ()
#16 0x000000000048fa3d in fnmatch ()
#17 0x00007fffffffd3e8 in ?? ()
#18 0x00007fffffffe950 in ?? ()
#19 0x00007fffffffea40 in ?? ()
#20 0x00007fffffffea28 in ?? ()
#21 0x0000000000000000 in ?? ()
#22 0x0000000000000000 in ?? ()
#23 0x00001fa00000037f in ?? ()
#24 0x0000000000000000 in ?? ()
#25 0x00000000006476c0 in ?? ()
#26 0x00000000006476c0 in ?? ()
#27 0x0000000000494d89 in fnmatch ()
Previous frame inner to this frame (corrupt stack?)
Seems to me that _once() was a very recent addition. Can't say for
certain whether this is the culprit, but it looks suspicious to me.
---
Gary Jennejohn
_______________________________________________
freebsd...@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-curre...@freebsd.org"
Also, cvsupd will core dump (SIGILL) when built on stable/8 amd64
r199641 when a connection to it is made from csup. An i386-built
cvsupd will run correctly on the same system. For cvsupd, it is dying
at dladdr(), but I have not had time to debug it further.
Sean
--
s...@FreeBSD.org
Interestingly enough, locally connecting with csup to cvsupd works just
fine on 9-current from November 26.
In fact, cvsup works Ok to update the CVS tree. It core dumps when it
connects to cvsupd locally and tries to update the ports/src trees.
---
Gary Jennejohn
Hmm, 'Illegal instruction' is interesting.
It would be interesting to see diagnostics with debug enabled in libc and, perhps,
libthr.
BTW, is cvsup threaded (linked with a threads lib)?
P.S. what is your system, both OS and hardware?
--
Andriy Gapon
> on 28/11/2009 12:15 Gary Jennejohn said the following:
> > Since I installed a new world and kernel on November 26 I'm seeing
> > core dumps with cvsup, even though I reinstalled cvsup yesterday.
> >
> > Here the output from a gdb session without any debugging symbols:
> >
> > Core was generated by `cvsup'.
> > Program terminated with signal 4, Illegal instruction.
>
>
> Hmm, 'Illegal instruction' is interesting.
> It would be interesting to see diagnostics with debug enabled in libc and, perhps,
> libthr.
>
I'll look into generating libc and cvsup with debugging.
As I wrote in a followup mail, cvsup works OK to update the CVS tree;
it dumps core when it connects to the local cvsupd to update ports/src.
> BTW, is cvsup threaded (linked with a threads lib)?
>
Doesn't look like it:
garyj:ernst:~:-bash:12> ldd /usr/local/bin/cvsup
/usr/local/bin/cvsup:
libz.so.5 => /lib/libz.so.5 (0x8006ea000)
libm.so.5 => /lib/libm.so.5 (0x8007fe000)
libc.so.7 => /lib/libc.so.7 (0x80091d000)
> P.S. what is your system, both OS and hardware?
>
garyj:ernst:~:-bash:14> uname -a
FreeBSD ernst.jennejohn.org 9.0-CURRENT FreeBSD 9.0-CURRENT #28:
Thu Nov 26 14:55:58 CET 2009 [...] amd64
It's a AMD64 X2 CPU.
---
Gary Jennejohn
Can you do 'x/i $rip'? Also, if you could rebuild libc with debug symbols
that could be helpful (just cd /usr/src/lib/libc; make clean; make
DEBUG_FLAGS=-g install).
--
John Baldwin
> On Saturday 28 November 2009 5:15:01 am Gary Jennejohn wrote:
> > Since I installed a new world and kernel on November 26 I'm seeing
> > core dumps with cvsup, even though I reinstalled cvsup yesterday.
> >
[snip gdb output]
> >
> > Seems to me that _once() was a very recent addition. Can't say for
> > certain whether this is the culprit, but it looks suspicious to me.
>
> Can you do 'x/i $rip'? Also, if you could rebuild libc with debug symbols
> that could be helpful (just cd /usr/src/lib/libc; make clean; make
> DEBUG_FLAGS=-g install).
>
I'll give it a shot as soon as I can recompile the tree. Compiling libc
alone doesn't work right now - there's an error about a missing SIG_HOLD.
---
Gary Jennejohn
There is the same problem in my server -- FreeBSD 9 Current AMD64
architecture
I recompile libc with debug info:
This GDB was configured as "amd64-marcel-freebsd"...(no debugging
symbols found)...
Core was generated by `cvsup'.
Program terminated with signal 4, Illegal instruction.
Reading symbols from /lib/libz.so.5...(no debugging symbols
found)...done.
Loaded symbols for /lib/libz.so.5
Reading symbols from /lib/libm.so.5...(no debugging symbols
found)...done.
Loaded symbols for /lib/libm.so.5
Reading symbols from /lib/libc.so.7...done.
Loaded symbols for /lib/libc.so.7
Reading symbols from /libexec/ld-elf.so.1...done.
Loaded symbols for /libexec/ld-elf.so.1
#0 0x0000000800a0004b in tzload (name=0xb <Address 0xb out of
bounds>,
sp=0x77fed8, doextend=0) at /usr/src/lib/libc/stdtime/localtime.c:
393
393 if (name != NULL && issetugid() != 0)
> On Saturday 28 November 2009 5:15:01 am Gary Jennejohn wrote:
>> Since I installed a new world and kernel on November 26 I'm seeing
>> core dumps with cvsup, even though I reinstalled cvsup yesterday.
>>
>> Here the output from a gdb session without any debugging symbols:
>>
>> Core was generated by `cvsup'.
>> Program terminated with signal 4, Illegal instruction.
>> Reading symbols from /lib/libz.so.5...(no debugging symbols found)...done.
>> Loaded symbols for /lib/libz.so.5
>> Reading symbols from /lib/libm.so.5...(no debugging symbols found)...done.
>> Loaded symbols for /lib/libm.so.5
>> Reading symbols from /lib/libc.so.7...(no debugging symbols found)...done.
>> Loaded symbols for /lib/libc.so.7
>> Reading symbols from /libexec/ld-elf.so.1...(no debugging symbols
> found)...done.
>> Seems to me that _once() was a very recent addition. Can't say for
>> certain whether this is the culprit, but it looks suspicious to me.
>
> Can you do 'x/i $rip'? Also, if you could rebuild libc with debug symbols
> that could be helpful (just cd /usr/src/lib/libc; make clean; make
> DEBUG_FLAGS=-g install).
Here is what I get from cvsupd:
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "amd64-marcel-freebsd"...
Core was generated by `cvsupd'.
Program terminated with signal 4, Illegal instruction.
Reading symbols from /lib/libz.so.5...done.
Loaded symbols for /lib/libz.so.5
Reading symbols from /lib/libm.so.5...done.
Loaded symbols for /lib/libm.so.5
Reading symbols from /usr/FreeBSD/branches/stable/8/src/lib/libc/libc.so.7...done.
Loaded symbols for /usr/FreeBSD/branches/stable/8/src/lib/libc/libc.so.7
Reading symbols from /libexec/ld-elf.so.1...done.
Loaded symbols for /libexec/ld-elf.so.1
#0 0x00000008005c0d20 in _rtld_error () from /libexec/ld-elf.so.1
(gdb) where
#0 0x00000008005c0d20 in _rtld_error () from /libexec/ld-elf.so.1
#1 0x00000008005c156b in dladdr () from /libexec/ld-elf.so.1
#2 0x00000008005c1643 in dladdr () from /libexec/ld-elf.so.1
#3 0x00000008005be7bd in ?? () from /libexec/ld-elf.so.1
#4 0x0000000000816ed8 in ?? ()
#5 0x0000000000000000 in ?? ()
#6 0x0000000000000006 in ?? ()
#7 0x0000000000000043 in ?? ()
#8 0x000000000072aba8 in ?? ()
#9 0x0000000800a368e1 in _nsyycheck () from /usr/FreeBSD/branches/stable/8/src/lib/libc/libc.so.7
#10 0x000000000072abbb in ?? ()
#11 0x0000000000008000 in ?? ()
#12 0x000000000072abbe in ?? ()
#13 0x0000000000000216 in ?? ()
#14 0x0000000000000000 in ?? ()
#15 0x00000008005ed600 in ?? ()
#16 0x0000000000000161 in ?? ()
#17 0x0000000800a09049 in tzload (name=0x800a368e1 "posixrules", sp=0x7353b8, doextend=0) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:422
#18 0x0000000800a08a1e in tzparse (name=0x72b1cd "CDT,M3.2.0,M11.1.0", sp=0x7353b8, lastditch=Variable "lastditch" is not available.
) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:1003
#19 0x0000000800a096f6 in tzload (name=Variable "name" is not available.) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:580
#20 0x0000000800a09a86 in tzsetwall_basic (rdlocked=1) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:1229
#21 0x0000000800a09deb in mktime (tmp=0x739ff8) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:2119
#22 0x00000000004ae085 in Date__ToTime (M3_D5xROs_d=0x5eed80) at DateBsd.m3:77
#23 0x00000000004709dc in TimeStamp__Init () at TimeStamp.m3:46
#24 0x0000000000470aa2 in TimeStamp__New (M3_CD9pHn__result=0x73a1c8) at TimeStamp.m3:60
#25 0x000000000046fc1e in Random__RandomSeed () at Random.m3:67
#26 0x000000000046fab2 in Random__Init (M3_B04YLH_t=0x825b38, M3_AicXUJ_fixed=0 '\0') at Random.m3:42
#27 0x000000000044b9d5 in SortedRCSDeltaTbl__Init (M3_EKdMGR_tbl=0x825af8) at SortedTable.mg:106
#28 0x0000000000450d99 in RCSFile__Init (M3_BcmbT8_rf=0x825990, M3_Bjvku1_desc=0x825a40) at RCSFile.m3:483
#29 0x00000000004510c2 in RCSFile__OpenReadonly (M3_Bd56fi_p=0x825838) at RCSFile.m3:574
#30 0x000000000046305f in Attic__RCSFileOpenReadonly (M3_DMtSqf_path=0x73b3f8) at Attic.m3:120
#31 0x00000000004166bc in RCSComp__CheckoutSend (M3_BQOzaz_self=0x65a610, M3_CzVV2w_sfr=0x65e300, M3_Bd56fi_name=0x825778, M3_Bd56fi_tag=0x651a00, M3_Bd56fi_date=0x651a00,
M3_AicXUJ_deleteIfDead=0 '\0', M3_AicXUJ_isFixup=0 '\0') at RCSComp.m3:1715
#32 0x000000000040d08a in RCSComp__CompCollection (M3_BQOzaz_self=0x65a610, M3_CzVV2w_sfr=0x65e300) at RCSComp.m3:238
#33 0x000000000040c4d8 in RCSComp__CompBatch (M3_BQOzaz_self=0x65a610) at RCSComp.m3:155
#34 0x000000000040bc90 in RCSComp__Apply (M3_BQOzaz_self=0x65a610) at RCSComp.m3:78
#35 0x00000000004a7240 in ThreadPosix__DetermineContext (M3_AJWxb1_oldSP=0x35) at ThreadPosix.m3:1127
#36 0x0000000000689058 in ?? ()
#37 0x00007fffffffe0a0 in ?? ()
#38 0x000000000049c68c in RTMisc__Align (M3_AJWxb1_a=Cannot access memory at address 0x64c) at RTMisc.m3:31
Previous frame inner to this frame (corrupt stack?)
(gdb) x/i $rip
0x8005c0d20 <_rtld_error+3296>: mov %rdi,0xffffffffffffffa0(%rbp)
(gdb) info threads
* 1 process 100176 0x00000008005c0d20 in _rtld_error () from /libexec/ld-elf.so.1
BTW, I noticed the m3 call ThreadPosix__DetermineContext(), yet cvsupd
is not linked against a thread library. The amd64 binary is linked to
libz, libm and libc. The i386 binary links against those as well as
libutil and libmd.
Sean
--
s...@FreeBSD.org
Wait, you are using a libc from stable/8 and getting this problem? The
_once() stuff isn't in stable/8's libc, only in head.
> Reading symbols from /libexec/ld-elf.so.1...done.
> Loaded symbols for /libexec/ld-elf.so.1
> #0 0x00000008005c0d20 in _rtld_error () from /libexec/ld-elf.so.1
> (gdb) where
> #0 0x00000008005c0d20 in _rtld_error () from /libexec/ld-elf.so.1
> #1 0x00000008005c156b in dladdr () from /libexec/ld-elf.so.1
> #2 0x00000008005c1643 in dladdr () from /libexec/ld-elf.so.1
> #3 0x00000008005be7bd in ?? () from /libexec/ld-elf.so.1
> #4 0x0000000000816ed8 in ?? ()
> #5 0x0000000000000000 in ?? ()
> #6 0x0000000000000006 in ?? ()
> #7 0x0000000000000043 in ?? ()
> #8 0x000000000072aba8 in ?? ()
> #9 0x0000000800a368e1 in _nsyycheck () from /usr/FreeBSD/branches/stable/8/src/lib/libc/libc.so.7
> #10 0x000000000072abbb in ?? ()
> #11 0x0000000000008000 in ?? ()
> #12 0x000000000072abbe in ?? ()
> #13 0x0000000000000216 in ?? ()
> #14 0x0000000000000000 in ?? ()
> #15 0x00000008005ed600 in ?? ()
> #16 0x0000000000000161 in ?? ()
> #17 0x0000000800a09049 in tzload (name=0x800a368e1 "posixrules", sp=0x7353b8, doextend=0) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:422
This is a call to strcat() in my sources here. Can you pop up to this frame
and do 'list'?
--
John Baldwin
Could you, please, also recompile rtld with debugging symbols ?
SIGILL might be generated by kernel when signal frame cannot be copied
out to usermode stack. Check out the registers content and size of
stack too.
> On Tuesday 01 December 2009 1:59:25 pm Sean C. Farley wrote:
>> On Tue, 1 Dec 2009, John Baldwin wrote:
>> Here is what I get from cvsupd:
>> GNU gdb 6.1.1 [FreeBSD]
>> Copyright 2004 Free Software Foundation, Inc.
>> GDB is free software, covered by the GNU General Public License, and you are
>> welcome to change it and/or distribute copies of it under certain conditions.
>> Type "show copying" to see the conditions.
>> There is absolutely no warranty for GDB. Type "show warranty" for details.
>> This GDB was configured as "amd64-marcel-freebsd"...
>> Core was generated by `cvsupd'.
>> Program terminated with signal 4, Illegal instruction.
>> Reading symbols from /lib/libz.so.5...done.
>> Loaded symbols for /lib/libz.so.5
>> Reading symbols from /lib/libm.so.5...done.
>> Loaded symbols for /lib/libm.so.5
>> Reading symbols from /usr/FreeBSD/branches/stable/8/src/lib/libc/libc.so.7...done.
>> Loaded symbols for /usr/FreeBSD/branches/stable/8/src/lib/libc/libc.so.7
>
> Wait, you are using a libc from stable/8 and getting this problem?
> The _once() stuff isn't in stable/8's libc, only in head.
I am running stable/8, and I can confirm that the source tree is
actually stable/8.
>> Reading symbols from /libexec/ld-elf.so.1...done.
>> Loaded symbols for /libexec/ld-elf.so.1
>> #0 0x00000008005c0d20 in _rtld_error () from /libexec/ld-elf.so.1
>> (gdb) where
>> #0 0x00000008005c0d20 in _rtld_error () from /libexec/ld-elf.so.1
>> #1 0x00000008005c156b in dladdr () from /libexec/ld-elf.so.1
>> #2 0x00000008005c1643 in dladdr () from /libexec/ld-elf.so.1
>> #3 0x00000008005be7bd in ?? () from /libexec/ld-elf.so.1
>> #4 0x0000000000816ed8 in ?? ()
>> #5 0x0000000000000000 in ?? ()
>> #6 0x0000000000000006 in ?? ()
>> #7 0x0000000000000043 in ?? ()
>> #8 0x000000000072aba8 in ?? ()
>> #9 0x0000000800a368e1 in _nsyycheck () from /usr/FreeBSD/branches/stable/8/src/lib/libc/libc.so.7
>> #10 0x000000000072abbb in ?? ()
>> #11 0x0000000000008000 in ?? ()
>> #12 0x000000000072abbe in ?? ()
>> #13 0x0000000000000216 in ?? ()
>> #14 0x0000000000000000 in ?? ()
>> #15 0x00000008005ed600 in ?? ()
>> #16 0x0000000000000161 in ?? ()
>> #17 0x0000000800a09049 in tzload (name=0x800a368e1 "posixrules", sp=0x7353b8, doextend=0) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:422
>
> This is a call to strcat() in my sources here. Can you pop up to this
> frame and do 'list'?
The strcat() puzzled me too. I do have very few changes in the tree, but they
are not related to this.
(gdb) frame 17
#17 0x0000000800a09049 in tzload (name=0x800a368e1 "posixrules", sp=0x7353b8, doextend=0) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:422
422 (void) strcat(fullname, name);
(gdb) l
417 return -1;
418 if ((strlen(p) + 1 + strlen(name) + 1) >= sizeof fullname)
419 return -1;
420 (void) strcpy(fullname, p);
421 (void) strcat(fullname, "/");
422 (void) strcat(fullname, name);
423 /*
424 ** Set doaccess if '.' (as in "../") shows up in name.
425 */
426 if (strchr(name, '.') != NULL)
Sean
--
s...@FreeBSD.org
> On Tue, Dec 01, 2009 at 12:59:25PM -0600, Sean C. Farley wrote:
>> On Tue, 1 Dec 2009, John Baldwin wrote:
>>> On Saturday 28 November 2009 5:15:01 am Gary Jennejohn wrote:
>>>> Since I installed a new world and kernel on November 26 I'm seeing
>>>> core dumps with cvsup, even though I reinstalled cvsup yesterday.
I just want to note that Gary and my problems may not necessarily be related.
They just happened in the same program package (cvsup). His is with cvsup and
mine is with cvsupd. However, both look related since they are getting SIGILL
and are calling time functions in libc.
>> BTW, I noticed the m3 call ThreadPosix__DetermineContext(), yet
>> cvsupd is not linked against a thread library. The amd64 binary is
>> linked to libz, libm and libc. The i386 binary links against those
>> as well as libutil and libmd.
>
> Could you, please, also recompile rtld with debugging symbols ?
>
> SIGILL might be generated by kernel when signal frame cannot be copied
> out to usermode stack. Check out the registers content and size of
> stack too.
In what detail and how to print with gdb, do you need the registers and stack
size? Here are the registers for frame #1.
(gdb) info registers
rax 0x4 4
rbx 0x8005ef230 34365960752
rcx 0x71bfc8 7454664
rdx 0x71bb40 7453504
rsi 0x2 2
rdi 0xb 11
rbp 0x4a9 0x4a9
rsp 0x71c038 0x71c038
r8 0x8005ef230 34365960752
r9 0x1 1
r10 0x0 0
r11 0x985 2437
r12 0x8005ed600 34365953536
r13 0x0 0
r14 0x800941c08 34369444872
r15 0x80094b88d 34369484941
rip 0x8005c167b 0x8005c167b <find_symdef+315>
eflags 0x10216 66070
cs 0x43 67
ss 0x3b 59
ds 0x0 0
es 0x0 0
fs 0x0 0
gs 0x0 0
New stack trace with more debugging:
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "amd64-marcel-freebsd"...
Core was generated by `cvsupd'.
Program terminated with signal 4, Illegal instruction.
Reading symbols from /lib/libz.so.5...done.
Loaded symbols for /lib/libz.so.5
Reading symbols from /lib/libm.so.5...done.
Loaded symbols for /lib/libm.so.5
Reading symbols from /usr/FreeBSD/branches/stable/8/src/lib/libc/libc.so.7...done.
Loaded symbols for /usr/FreeBSD/branches/stable/8/src/lib/libc/libc.so.7
Reading symbols from /libexec/ld-elf.so.1...done.
Loaded symbols for /libexec/ld-elf.so.1
#0 symlook_default (name=0xb <Address 0xb out of bounds>, hash=2, refobj=0x71bb40, defobj_out=0x71bfc8, ventry=0x8005ef230, flags=1) at rtld.c:2611
2611 {
(gdb) where
#0 symlook_default (name=0xb <Address 0xb out of bounds>, hash=2, refobj=0x71bb40, defobj_out=0x71bfc8, ventry=0x8005ef230, flags=1) at rtld.c:2611
#1 0x00000008005c167b in find_symdef (symnum=1193, refobj=0x8005ed600, defobj_out=0x71c0a0, flags=1, cache=0x0) at rtld.c:1206
#2 0x00000008005c1753 in _rtld_bind (obj=0x8005ed600, reloff=Variable "reloff" is not available.
) at rtld.c:578
#3 0x00000008005be8cd in _rtld_bind_start () at /usr/FreeBSD/branches/stable/8/src/libexec/rtld-elf/amd64/rtld_start.S:99
#4 0x0000000000000985 in ?? ()
#5 0x0000000000000000 in ?? ()
#6 0x0000000000000006 in ?? ()
#7 0x0000000000000043 in ?? ()
#8 0x000000000072aba8 in ?? ()
#9 0x0000000800a368e1 in _nsyycheck () from /usr/FreeBSD/branches/stable/8/src/lib/libc/libc.so.7
#10 0x000000000072abbb in ?? ()
#11 0x0000000000008000 in ?? ()
#12 0x000000000072abbe in ?? ()
#13 0x0000000000000216 in ?? ()
#14 0x0000000000000000 in ?? ()
#15 0x00000008005ed600 in ?? ()
#16 0x0000000000000161 in ?? ()
#17 0x0000000800a09049 in tzload (name=0x800a368e1 "posixrules", sp=0x7353b8, doextend=0) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:422
#18 0x0000000800a08a1e in tzparse (name=0x72b1cd "CDT,M3.2.0,M11.1.0", sp=0x7353b8, lastditch=Variable "lastditch" is not available.
) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:1003
#19 0x0000000800a096f6 in tzload (name=Variable "name" is not available.
) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:580
#20 0x0000000800a09a86 in tzsetwall_basic (rdlocked=1) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:1229
#21 0x0000000800a09deb in mktime (tmp=0x739ff8) at /usr/FreeBSD/branches/stable/8/src/lib/libc/stdtime/localtime.c:2119
#22 0x00000000004ae085 in Date__ToTime (M3_D5xROs_d=0x5eed80) at DateBsd.m3:77
#23 0x00000000004709dc in TimeStamp__Init () at TimeStamp.m3:46
#24 0x0000000000470aa2 in TimeStamp__New (M3_CD9pHn__result=0x73a1c8) at TimeStamp.m3:60
#25 0x000000000046fc1e in Random__RandomSeed () at Random.m3:67
#26 0x000000000046fab2 in Random__Init (M3_B04YLH_t=0x756d88, M3_AicXUJ_fixed=0 '\0') at Random.m3:42
#27 0x000000000044b9d5 in SortedRCSDeltaTbl__Init (M3_EKdMGR_tbl=0x756d48) at SortedTable.mg:106
#28 0x0000000000450d99 in RCSFile__Init (M3_BcmbT8_rf=0x756be0, M3_Bjvku1_desc=0x756c90) at RCSFile.m3:483
#29 0x00000000004510c2 in RCSFile__OpenReadonly (M3_Bd56fi_p=0x756a88) at RCSFile.m3:574
#30 0x000000000046305f in Attic__RCSFileOpenReadonly (M3_DMtSqf_path=0x73b3f8) at Attic.m3:120
#31 0x00000000004166bc in RCSComp__CheckoutSend (M3_BQOzaz_self=0x65a610, M3_CzVV2w_sfr=0x65e300, M3_Bd56fi_name=0x7569c8, M3_Bd56fi_tag=0x651a00, M3_Bd56fi_date=0x651a00,
M3_AicXUJ_deleteIfDead=0 '\0', M3_AicXUJ_isFixup=0 '\0') at RCSComp.m3:1715
#32 0x000000000040d08a in RCSComp__CompCollection (M3_BQOzaz_self=0x65a610, M3_CzVV2w_sfr=0x65e300) at RCSComp.m3:238
#33 0x000000000040c4d8 in RCSComp__CompBatch (M3_BQOzaz_self=0x65a610) at RCSComp.m3:155
#34 0x000000000040bc90 in RCSComp__Apply (M3_BQOzaz_self=0x65a610) at RCSComp.m3:78
#35 0x00000000004a7240 in ThreadPosix__DetermineContext (M3_AJWxb1_oldSP=0x35) at ThreadPosix.m3:1127
#36 0x0000000000689058 in ?? ()
#37 0x00007fffffffe0a0 in ?? ()
#38 0x000000000049c68c in RTMisc__Align (M3_AJWxb1_a=Cannot access memory at address 0x64c
) at RTMisc.m3:31
Previous frame inner to this frame (corrupt stack?)
(gdb) frame 0
#0 symlook_default (name=0xb <Address 0xb out of bounds>, hash=2, refobj=0x71bb40, defobj_out=0x71bfc8, ventry=0x8005ef230, flags=1) at rtld.c:2611
2611 {
(gdb) l
2606 * defining object via the reference parameter DEFOBJ_OUT.
2607 */
2608 static const Elf_Sym *
2609 symlook_default(const char *name, unsigned long hash, const Obj_Entry *refobj,
2610 const Obj_Entry **defobj_out, const Ver_Entry *ventry, int flags)
2611 {
2612 DoneList donelist;
2613 const Elf_Sym *def;
2614 const Elf_Sym *symp;
2615 const Obj_Entry *obj;
(gdb) x/i $rip
0x8005c0e30 <symlook_default+32>: mov %rdi,0xffffffffffffffa0(%rbp)
(gdb) quit
Here is information from frame #1.
(gdb) frame 1
#1 0x00000008005c167b in find_symdef (symnum=1193, refobj=0x8005ed600, defobj_out=0x71c0a0, flags=1, cache=0x0) at rtld.c:1206
1206 def = symlook_default(name, hash, refobj, &defobj, ventry, flags);
(gdb) info frame
Stack level 1, frame at 0x71c098:
rip = 0x8005c167b in find_symdef (rtld.c:1206); saved rip 0x8005c1753
called by frame at 0x71c0d8, caller of frame at 0x71c038
source language c.
Arglist at 0x71c030, args: symnum=1193, refobj=0x8005ed600, defobj_out=0x71c0a0, flags=1, cache=0x0
Locals at 0x71c030, Previous frame's sp is 0x71c098
Saved registers:
rbx at 0x71c060, rbp at 0x71c068, r12 at 0x71c070, r13 at 0x71c078, r14 at 0x71c080, r15 at 0x71c088, rip at 0x71c090
I find this interesting. The call to strcat() on the preceding line worked.
(gdb) p name
$2 = 0x80094b88d "strcat"
> I'll give it a shot as soon as I can recompile the tree. Compiling libc
> alone doesn't work right now - there's an error about a missing SIG_HOLD.
>
There's definitely a regression here. Even with an up-to-date src tree
it's not possible to recompile libc on its own. The commit which added,
among other things, the sighold handling seems to have broken things.
---
Gary Jennejohn
[snip old gdb stuff]
> Can you do 'x/i $rip'? Also, if you could rebuild libc with debug symbols
> that could be helpful (just cd /usr/src/lib/libc; make clean; make
> DEBUG_FLAGS=-g install).
>
OK, here it is:
Core was generated by `cvsup'.
Program terminated with signal 4, Illegal instruction.
Reading symbols from /lib/libz.so.5...(no debugging symbols found)...done.
Loaded symbols for /lib/libz.so.5
Reading symbols from /lib/libm.so.5...(no debugging symbols found)...done.
Loaded symbols for /lib/libm.so.5
Reading symbols from /lib/libc.so.7...done.
Loaded symbols for /lib/libc.so.7
Reading symbols from /libexec/ld-elf.so.1...done.
Loaded symbols for /libexec/ld-elf.so.1
#0 0x00000008009ee0e7 in tzload (name=0xb <Address 0xb out of bounds>,
sp=0x76fe58, doextend=0) at /usr/src/lib/libc/stdtime/localtime.c:393
393 if (name != NULL && issetugid() != 0)
(gdb) bt
#0 0x00000008009ee0e7 in tzload (name=0xb <Address 0xb out of bounds>,
sp=0x76fe58, doextend=0) at /usr/src/lib/libc/stdtime/localtime.c:393
#1 0x00000008009edb8e in tzparse (name=0x765c6d "", sp=0x76fe58, lastditch=Variable "lastditch" is not available.
)
at /usr/src/lib/libc/stdtime/localtime.c:1002
#2 0x00000008009ee810 in tzload (name=Variable "name" is not available.
)
at /usr/src/lib/libc/stdtime/localtime.c:579
#3 0x00000008009eea28 in gmtload (sp=0x800b4d7a0)
at /usr/src/lib/libc/stdtime/localtime.c:1197
#4 0x00000008009f1d78 in _once (once_control=0x800b48fe0, init_routine=Variable "init_routine" is not available.
)
at /usr/src/lib/libc/gen/_once_stub.c:43
#5 0x00000008009ed80f in gmtsub (timep=0x774bb8, offset=0, tmp=0x800b52040)
at /usr/src/lib/libc/stdtime/localtime.c:1489
#6 0x00000008009ef097 in gmtime (timep=0x774bb8)
at /usr/src/lib/libc/stdtime/localtime.c:1550
#7 0x00000000004a643a in calloc ()
#8 0x000000000043aec7 in ?? ()
#9 0x0000000000448eaa in ?? ()
#10 0x0000000000409ece in ?? ()
#11 0x00000000004191a4 in ?? ()
#12 0x0000000000417cbe in ?? ()
#13 0x000000000041529f in ?? ()
#14 0x0000000000414d7a in ?? ()
#15 0x000000000049f980 in calloc ()
#16 0x000000000048fa3d in fnmatch ()
#17 0x00007fffffffd3e8 in ?? ()
#18 0x00007fffffffe950 in ?? ()
#19 0x00007fffffffea40 in ?? ()
#20 0x00007fffffffea28 in ?? ()
#21 0x0000000000000000 in ?? ()
#22 0x0000000000000000 in ?? ()
#23 0x00001fa00000037f in ?? ()
#24 0x0000000000000000 in ?? ()
#25 0x00000000006476c0 in ?? ()
#26 0x00000000006476c0 in ?? ()
#27 0x0000000000494d89 in fnmatch ()
Previous frame inner to this frame (corrupt stack?)
(gdb) x/i $rip
0x8009ee0e7 <tzload+55>: callq 0x80094959c <_init+6180>
(gdb) up
#1 0x00000008009edb8e in tzparse (name=0x765c6d "", sp=0x76fe58, lastditch=Variable "lastditch" is not available.
)
at /usr/src/lib/libc/stdtime/localtime.c:1002
1002 load_result = tzload(TZDEFRULES, sp, FALSE);
(gdb) x/i $rip
0x8009edb8e <tzparse+238>: test %eax,%eax
(gdb) up
#2 0x00000008009ee810 in tzload (name=Variable "name" is not available.
)
at /usr/src/lib/libc/stdtime/localtime.c:579
579 result = tzparse(&u.buf[1], &ts, FALSE);
(gdb) x/i $rip
0x8009ee810 <tzload+1888>: test %eax,%eax
(gdb) up
#3 0x00000008009eea28 in gmtload (sp=0x800b4d7a0)
at /usr/src/lib/libc/stdtime/localtime.c:1197
1197 if (tzload(gmt, sp, TRUE) != 0)
(gdb) x/i $rip
0x8009eea28 <gmtload+24>: test %eax,%eax
(gdb) up
#4 0x00000008009f1d78 in _once (once_control=0x800b48fe0, init_routine=Variable "init_routine" is not available.
)
at /usr/src/lib/libc/gen/_once_stub.c:43
43 init_routine();
(gdb) x/i $rip
0x8009f1d78 <_once+24>: movl $0x1,(%rbx)
(gdb) up
#5 0x00000008009ed80f in gmtsub (timep=0x774bb8, offset=0, tmp=0x800b52040)
at /usr/src/lib/libc/stdtime/localtime.c:1489
1489 _once(&gmt_once, gmt_init);
(gdb) x/i $rip
0x8009ed80f <gmtsub+47>:
lea 1441674(%rip),%rdx # 0x800b4d7a0 <_nsyyout+44408>
(gdb) up
#6 0x00000008009ef097 in gmtime (timep=0x774bb8)
at /usr/src/lib/libc/stdtime/localtime.c:1550
1550 gmtsub(timep, 0L, &tm);
(gdb) x/i $rip
0x8009ef097 <gmtime+119>: jmp 0x8009ef070 <gmtime+80>
(gdb) up
#7 0x00000000004a643a in calloc ()
(gdb) x/i $rip
0x4a643a <calloc+42618>: mov %rax,0xffffffffffffff48(%rbp)
(gdb) frame 0
#0 0x00000008009ee0e7 in tzload (name=0xb <Address 0xb out of bounds>,
sp=0x76fe58, doextend=0) at /usr/src/lib/libc/stdtime/localtime.c:393
393 if (name != NULL && issetugid() != 0)
(gdb)
Can you get a ktrace? I wonder if it is trying to handle a signal 11 (name of
'0xb' is rather bogus) and triggering SIGILL due to a problem with that.
> (gdb) bt
> #0 0x00000008009ee0e7 in tzload (name=0xb <Address 0xb out of bounds>,
> sp=0x76fe58, doextend=0) at /usr/src/lib/libc/stdtime/localtime.c:393
> #1 0x00000008009edb8e in tzparse (name=0x765c6d "", sp=0x76fe58,
lastditch=Variable "lastditch" is not available.
> )
> at /usr/src/lib/libc/stdtime/localtime.c:1002
> #2 0x00000008009ee810 in tzload (name=Variable "name" is not available.
> )
> at /usr/src/lib/libc/stdtime/localtime.c:579
> #3 0x00000008009eea28 in gmtload (sp=0x800b4d7a0)
> at /usr/src/lib/libc/stdtime/localtime.c:1197
> #4 0x00000008009f1d78 in _once (once_control=0x800b48fe0,
init_routine=Variable "init_routine" is not available.
> )
> at /usr/src/lib/libc/gen/_once_stub.c:43
> #5 0x00000008009ed80f in gmtsub (timep=0x774bb8, offset=0, tmp=0x800b52040)
> at /usr/src/lib/libc/stdtime/localtime.c:1489
> #6 0x00000008009ef097 in gmtime (timep=0x774bb8)
> at /usr/src/lib/libc/stdtime/localtime.c:1550
--
John Baldwin
>
> Can you get a ktrace? I wonder if it is trying to handle a signal 11 (name of
> '0xb' is rather bogus) and triggering SIGILL due to a problem with that.
>
Yup, you hit the nail on the head. The last few lines from kdump
2416 cvsup CALL gettimeofday(0x774a08,0x774a18)
2416 cvsup RET gettimeofday 0
2416 cvsup CALL gettimeofday(0x774a98,0x774aa8)
2416 cvsup RET gettimeofday 0
2416 cvsup CALL open(0x794270,O_RDONLY,<unused>0)
2416 cvsup RET open 12/0xc
2416 cvsup CALL fstat(0xc,0x774cf8)
2416 cvsup RET fstat 0
2416 cvsup CALL mmap(0,0x4db47,PROT_READ,MAP_SHARED,0xc,0)
2416 cvsup RET mmap 6221824/0x8005ef000
2416 cvsup CALL close(0xc)
2416 cvsup RET close 0
2416 cvsup CALL issetugid
2416 cvsup RET issetugid 0
2416 cvsup CALL open(0x7745c8,O_RDONLY,<unused>0x2e)
2416 cvsup RET open 12/0xc
2416 cvsup CALL fstat(0xc,0x7749d8)
2416 cvsup RET fstat 0
2416 cvsup CALL read(0xc,0x765c68,0xa1e8)
2416 cvsup RET read 118/0x76
2416 cvsup CALL close(0xc)
2416 cvsup RET close 0
2416 cvsup PSIG SIGSEGV caught handler=0x499ea0 mask=0x0 code=0x2
---
Gary Jennejohn
> On Wed, 2 Dec 2009 09:37:23 -0500
> John Baldwin <j...@freebsd.org> wrote:
>
> >
> > Can you get a ktrace? I wonder if it is trying to handle a signal 11 (name of
> > '0xb' is rather bogus) and triggering SIGILL due to a problem with that.
> >
>
> Yup, you hit the nail on the head. The last few lines from kdump
> [snip old kdump output]
Sorry for the churn, but this is probably more useful
2430 cvsup RET lseek 0
2430 cvsup CALL fcntl(0x1,F_GETFL,0)
2430 cvsup RET fcntl 2
2430 cvsup CALL fcntl(0x1,F_SETFL,O_RDWR|O_NONBLOCK)
2430 cvsup RET fcntl 0
2430 cvsup CALL write(0x1,0x640018,0x12)
2430 cvsup GIO fd 1 wrote 18 bytes
" Edit ports/MOVED
"
2430 cvsup RET write 18/0x12
2430 cvsup CALL fcntl(0x1,F_SETFL,O_RDWR)
2430 cvsup RET fcntl 0
2430 cvsup CALL gettimeofday(0x774a08,0x774a18)
2430 cvsup RET gettimeofday 0
2430 cvsup CALL gettimeofday(0x774a98,0x774aa8)
2430 cvsup RET gettimeofday 0
2430 cvsup CALL open(0x67bd78,O_RDONLY,<unused>0)
2430 cvsup NAMI "/usr/ports/MOVED"
2430 cvsup RET open 12/0xc
2430 cvsup CALL fstat(0xc,0x774cf8)
2430 cvsup STRU struct stat {dev=108, ino=2214146, mode=-rw-r--r-- , nlink=1, uid=0, gid=0, rdev=8847104, atime=1259771681, stime=1259657784, ctime=1259657784, birthtime=1259657784, size=318279, blksize=4096, blocks=672, flags=0x0 }
2430 cvsup RET fstat 0
2430 cvsup CALL mmap(0,0x4db47,PROT_READ,MAP_SHARED,0xc,0)
2430 cvsup RET mmap 6221824/0x8005ef000
2430 cvsup CALL close(0xc)
2430 cvsup RET close 0
2430 cvsup CALL issetugid
2430 cvsup RET issetugid 0
2430 cvsup CALL open(0x7745c8,O_RDONLY,<unused>0x2e)
2430 cvsup NAMI "/usr/share/zoneinfo/UTC"
2430 cvsup RET open 12/0xc
2430 cvsup CALL fstat(0xc,0x7749d8)
2430 cvsup STRU struct stat {dev=108, ino=4900414, mode=-r--r--r-- , nlink=4, uid=0, gid=0, rdev=19572028, atime=1259771681, stime=1259754131, ctime=1259754131, birthtime=1259754131, size=118, blksize=4096, blocks=4, flags=0x0 }
2430 cvsup RET fstat 0
2430 cvsup CALL read(0xc,0x765c68,0xa1e8)
2430 cvsup GIO fd 12 read 118 bytes
0x0000 545a 6966 3200 0000 0000 0000 0000 0000 |TZif2...........|
0x0010 0000 0000 0000 0001 0000 0001 0000 0000 |................|
0x0020 0000 0000 0000 0001 0000 0004 0000 0000 |................|
0x0030 0000 5554 4300 0000 545a 6966 3200 0000 |..UTC...TZif2...|
0x0040 0000 0000 0000 0000 0000 0000 0000 0001 |................|
0x0050 0000 0001 0000 0000 0000 0000 0000 0001 |................|
0x0060 0000 0004 0000 0000 0000 5554 4300 0000 |..........UTC...|
0x0070 0a55 5443 300a |.UTC0.|
2430 cvsup RET read 118/0x76
2430 cvsup CALL close(0xc)
2430 cvsup RET close 0
2430 cvsup PSIG SIGSEGV caught handler=0x499ea0 mask=0x0 code=0x2
2430 cvsup NAMI "cvsup.core"
> On Wed, 2 Dec 2009 17:39:28 +0100
> Gary Jennejohn <gary.je...@freenet.de> wrote:
>
> 2430 cvsup CALL open(0x7745c8,O_RDONLY,<unused>0x2e)
> 2430 cvsup NAMI "/usr/share/zoneinfo/UTC"
> 2430 cvsup RET open 12/0xc
I just removed file "/usr/share/zoneinfo/UTC" (in previous updates it didn't
appear in /usr/share/zoneinfo)
and cvsup became works fine! :)
Serj.
> > On Wed, 2 Dec 2009 17:39:28 +0100
> > Gary Jennejohn <gary.je...@freenet.de> wrote:
> >
> > 2430 cvsup CALL open(0x7745c8,O_RDONLY,<unused>0x2e)
> > 2430 cvsup NAMI "/usr/share/zoneinfo/UTC"
> > 2430 cvsup RET open 12/0xc
>
> I just removed file "/usr/share/zoneinfo/UTC" (in previous updates it didn't
> appear in /usr/share/zoneinfo)
> and cvsup became works fine! :)
>
Right, this allows cvsup to run. But my UTC was generated today
-r--r--r-- 4 root wheel 118 Dec 2 12:42 /usr/share/zoneinfo/UTC
when I did install world.
It seems that this file has some sort of incompatibility with something
(I have no idea what) which causes cvsup to dump core.
So, removing the file fixes a symptom, but not the cause.
---
Gary Jennejohn
Yeah, two problems.
The file causes SIGSEGV and SIGSEGV causes SIGILL.
--
Andriy Gapon
Kostik Belousov wrote:
>>>>
>>
> Could you, please, also recompile rtld with debugging symbols ?
>
> SIGILL might be generated by kernel when signal frame cannot be copied
> out to usermode stack. Check out the registers content and size of
> stack too.
Was this ever root caused?
Unless the fault address being reported is wrong I don't see why the
CALL fails. Is there a way to dump the CS: selector values to make sure
the target address of the CALL is accessible that way? How to tell if
that page is executable?
OF interest: I have two bootable disks at svn 200727 on this system and
the other doesn't crash here. The other was installed at 8.0-RELEASE
and this one date from last summer, both upgraded to svn 200727 by
installworld etc. However another system was originally installed a
year ago, likewise upgrades since to 200727, and does not fail like this:
bigback:/root# uname -a
FreeBSD bigback.housenet.jrv 9.0-CURRENT FreeBSD 9.0-CURRENT #0
r200727M: Wed Jan 20 12:28:18 UTC 2010
ro...@bigback.housenet.jrv:/usr/obj/usr/src/sys/GENERIC amd64
bigback:/root# gdb cvsup
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "amd64-marcel-freebsd"...(no debugging
symbols found)...
(gdb) run ports-supfile
Starting program: /usr/local/bin/cvsup ports-supfile
Connected to cvsup10.FreeBSD.org
Updating collection ports-all/cvs
Edit ports/CHANGES
Program received signal SIGSEGV, Segmentation fault.
0x00000008009fef3b in tzload (name=0x800a2d8e1 "posixrules",
sp=0x7c0ed8, doextend=0) at /usr/src/lib/libc/stdtime/localtime.c:393
393 if (name != NULL && issetugid() != 0)
(gdb) x/i $pc
0x8009fef3b <tzload+75>: callq 0x80095a5dc <_init+6196>
(gdb) x/20i tzload
0x8009feef0 <tzload>: mov %rbx,0xffffffffffffffd0(%rsp)
0x8009feef5 <tzload+5>: mov %r12,0xffffffffffffffe0(%rsp)
0x8009feefa <tzload+10>: mov %rdi,%rbx
0x8009feefd <tzload+13>: mov %r13,0xffffffffffffffe8(%rsp)
0x8009fef02 <tzload+18>: mov %r14,0xfffffffffffffff0(%rsp)
0x8009fef07 <tzload+23>: mov %rsi,%r12
0x8009fef0a <tzload+26>: mov %rbp,0xffffffffffffffd8(%rsp)
0x8009fef0f <tzload+31>: mov %r15,0xfffffffffffffff8(%rsp)
0x8009fef14 <tzload+36>: sub $0xeea8,%rsp
0x8009fef1b <tzload+43>: mov 1364782(%rip),%r14 #
0x800b4c250 <__thr_jtable+90512>
0x8009fef22 <tzload+50>: mov %edx,%r13d
0x8009fef25 <tzload+53>: mov (%r14),%rax
0x8009fef28 <tzload+56>: mov %rax,0xee68(%rsp)
0x8009fef30 <tzload+64>: xor %eax,%eax
0x8009fef32 <tzload+66>: test %rdi,%rdi
0x8009fef35 <tzload+69>: je 0x8009ff090 <tzload+416>
0x8009fef3b <tzload+75>: callq 0x80095a5dc <_init+6196>
0x8009fef40 <tzload+80>: test %eax,%eax
0x8009fef42 <tzload+82>: jne 0x8009ff062 <tzload+370>
0x8009fef48 <tzload+88>: movzbl (%rbx),%ebp
(gdb) x/5i 0x80095a5dc
0x80095a5dc <_init+6196>: jmpq *2035238(%rip) # 0x800b4b408
<__thr_jtable+86856>
0x80095a5e2 <_init+6202>: pushq $0x181
0x80095a5e7 <_init+6207>: jmpq 0x800958dbc <_init+20>
0x80095a5ec <_init+6212>: jmpq *2035230(%rip) # 0x800b4b410
<__thr_jtable+86864>
0x80095a5f2 <_init+6218>: pushq $0x182
(gdb) bt
#0 0x00000008009fef3b in tzload (name=0x800a2d8e1 "posixrules",
sp=0x7c0ed8, doextend=0) at /usr/src/lib/libc/stdtime/localtime.c:393
#1 0x00000008009fe9ce in tzparse (name=0x7b6ced "", sp=0x7c0ed8,
lastditch=Variable "lastditch" is not available.
) at /usr/src/lib/libc/stdtime/localtime.c:1002
#2 0x00000008009ff6a6 in tzload (name=Variable "name" is not available.
) at /usr/src/lib/libc/stdtime/localtime.c:579
#3 0x00000008009ff8b8 in gmtload (sp=0x800b601c0) at
/usr/src/lib/libc/stdtime/localtime.c:1197
#4 0x0000000800a02ca8 in _once (once_control=0x800b5ba00,
init_routine=Variable "init_routine" is not available.
) at /usr/src/lib/libc/gen/_once_stub.c:43
#5 0x00000008009fe64f in gmtsub (timep=0x7c5bb8, offset=0,
tmp=0x800b64a60) at /usr/src/lib/libc/stdtime/localtime.c:1489
#6 0x00000008009fff27 in gmtime (timep=0x7c5bb8) at
/usr/src/lib/libc/stdtime/localtime.c:1550
#7 0x00000000004a643a in calloc ()
#8 0x000000000043aec7 in ?? ()
#9 0x0000000000448eaa in ?? ()
#10 0x0000000000409ece in ?? ()
#11 0x00000000004191a4 in ?? ()
#12 0x0000000000417cbe in ?? ()
#13 0x000000000041529f in ?? ()
#14 0x0000000000414d7a in ?? ()
#15 0x000000000049f980 in calloc ()
#16 0x000000000048fa3d in fnmatch ()
#17 0x00007fffffffd3b8 in ?? ()
#18 0x00007fffffffe920 in ?? ()
#19 0x00007fffffffea10 in ?? ()
#20 0x00007fffffffe9f8 in ?? ()
#21 0x0000000000000000 in ?? ()
#22 0x0000000000000000 in ?? ()
#23 0x00001fa00000037f in ?? ()
#24 0x0000000000000000 in ?? ()
#25 0x00000000006476c0 in ?? ()
#26 0x00000000006476c0 in ?? ()
#27 0x0000000000494d89 in fnmatch ()
Previous frame inner to this frame (corrupt stack?)
(gdb) info all-reg
rax 0x0 0
rbx 0x800a2d8e1 34370410721
rcx 0xa7 167
rdx 0x0 0
rsi 0x7c0ed8 8130264
rdi 0x800a2d8e1 34370410721
rbp 0x7c0ed8 0x7c0ed8
rsp 0x7a7c68 0x7a7c68
r8 0x0 0
r9 0x0 0
r10 0x1f6 502
r11 0x682880 6826112
r12 0x7c0ed8 8130264
r13 0x0 0
r14 0x800b53920 34371615008
r15 0x7b6ce9 8088809
rip 0x8009fef3b 0x8009fef3b <tzload+75>
eflags 0x10206 66054
cs 0x43 67
ss 0x3b 59
ds 0x0 0
es 0x0 0
fs 0x0 0
gs 0x0 0
st0 0 (raw 0x00000000000000000000)
st1 0 (raw 0x00000000000000000000)
st2 0 (raw 0x00000000000000000000)
st3 0 (raw 0x00000000000000000000)
st4 0 (raw 0x00000000000000000000)
st5 0 (raw 0x00000000000000000000)
st6 104.4456787109375 (raw 0x4005d0e4300000000000)
st7 104.4456787109375 (raw 0x4005d0e4300000000000)
fctrl 0x37f 895
fstat 0x0 0
ftag 0xffff 65535
fiseg 0x43 67
fioff 0x99b58c 10073484
foseg 0x3b 59
fooff 0x7c59f0 8149488
fop 0x55c 1372
xmm0 {f = {0x0, 0x1, 0x0, 0x0}} {f = {0, 1.75, 0, 0}}
xmm1 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm2 {f = {0x0, 0x1, 0x0, 0x0}} {f = {-1.81759241e-12,
1.70399642, 0, 0}}
xmm3 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm4 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm5 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm6 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm7 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm8 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm9 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm10 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm11 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm12 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm13 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm14 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm15 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
mxcsr 0x1fa0 8096
(gdb)