From mboxrd@z Thu Jan 1 00:00:00 1970 From: compudj@krystal.dyndns.org (Mathieu Desnoyers) Date: Thu, 10 Feb 2011 18:57:17 -0500 Subject: [ltt-dev] Insight into crash on powerpc with ust-0.11 In-Reply-To: <4D547890.1030101@windriver.com> References: <4D547890.1030101@windriver.com> Message-ID: * Jason Wessel (jason.wessel at windriver.com) wrote: > I built and linked a PPC application with -lust it gets a segmentation > fault before it ever gets to main(). > Hi Jason, Before we dig further, what version of UST are you using ? Can you try with the version in the git HEAD at http://lttng.org/ust ? Thanks! Mathieu > Breakpoint 1 at 0x10001b04: file src/main.c, line 196. > (gdb) c > Continuing. > > Program received signal SIGSEGV, Segmentation fault. > 0x0fd97b5c in marker_probe_register (channel=0xfdae034 "metadata", name=0xfdae050 "core_marker_format", format=0x0, probe=0xfd9f6d4 , > probe_private=0x1002e070) at marker.c:799 > 799 trace_mark(metadata, core_marker_id, > (gdb) bt > #0 0x0fd97b5c in marker_probe_register (channel=0xfdae034 "metadata", name=0xfdae050 "core_marker_format", format=0x0, probe=0xfd9f6d4 , > probe_private=0x1002e070) at marker.c:799 > #1 0x0fd9a5f8 in ltt_marker_connect (channel=0xfdae034 "metadata", mname=0xfdae050 "core_marker_format", pname=) at marker-control.c:187 > #2 0x0fd9a740 in init_marker_control () at marker-control.c:416 > #3 0x0fdabc50 in __do_global_ctors_aux () from /ord-gp11/jwessel/42/lemon_p2020/export/dist/usr/lib/libust.so.0 > #4 0x0fd94a84 in _init () from /ord-gp11/jwessel/42/lemon_p2020/export/dist/usr/lib/libust.so.0 > #5 0x0ffceaf8 in call_init (l=0x48000a70, argc=1, argv=0xbfe2cc34, env=0xbfe2cc3c) at dl-init.c:70 > #6 0x0ffcec60 in _dl_init (main_map=0xfff08e8, argc=1, argv=0xbfe2cc34, env=0xbfe2cc3c) at dl-init.c:134 > #7 0x0ffd67d4 in _start () from /ord-gp11/jwessel/42/lemon_p2020/export/dist/lib/ld.so.1 > Backtrace stopped: frame did not save the PC > (gdb) > > With some disassembly: > (gdb) disas /m $pc-16,$pc+16 > Dump of assembler code from 0xfd97b4c to 0xfd97b6c: > 797 entry->event_id = ret; > 0x0fd97b4c : clrlwi r8,r28,16 > 0x0fd97b50 : sth r8,54(r31) > > 798 ret = 0; > 799 trace_mark(metadata, core_marker_id, > 0x0fd97b54 : lis r3,3 > 0x0fd97b58 : ori r3,r3,12120 > => 0x0fd97b5c : lbz r0,12(r3) > 0x0fd97b60 : li r24,1 > 0x0fd97b64 : cmpwi cr7,r0,0 > 0x0fd97b68 : beq+ cr7,0xfd97bf0 > 0x0fd97b6c : li r0,4 > 0x0fd97b70 : li r4,0 > 0x0fd97b74 : stw r0,8(r1) > 0x0fd97b78 : addi r5,r1,24 > 0x0fd97b7c : stw r0,12(r1) > > I am assuming there is something wrong with the trace_mark macro but I had not dug into how it actually works, and thought I might ask here first if anyone had any ideas. > > Thanks, > Jason. > > _______________________________________________ > ltt-dev mailing list > ltt-dev at lists.casi.polymtl.ca > http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev > -- Mathieu Desnoyers Operating System Efficiency R&D Consultant EfficiOS Inc. http://www.efficios.com