From: Greg B. <gn...@sg...> - 2004-10-15 19:09:07
|
On Fri, Oct 15, 2004 at 07:19:42PM +0100, John Levon wrote: > On Sat, Oct 16, 2004 at 04:01:19AM +1000, Greg Banks wrote: > > > Ok, so that was a wild goose chase. The real problem I'm trying > > to track down is that my backtrace samples are not being emitted to > > the gmon.out file by opgprof. > > Can I see your backtrace kernel patch ? Sure, attached (actually a slightly newer one than I'm running). I was going to post it when I was sure it was working with a modern kernel and oprofile 0.8.1. It has previously worked with kernel 2.6.4 and oprofile-cvs20040504. Tracing work indicates it's producing correct sequences of PC values. > > KERNEL_ENTER_SWITCH to kernel > > Lookup of cookie 0 failed, errno=22 > > CTX_SWITCH to tid 0, tgid 0, cookie 0(none) > > Opening "/var/lib/oprofile/samples/current/{root}//root/vmlinux-2.6.9-rc3-gnbm/{dep}/{root}//root/vmlinux-2.6.9-rc3-gnbm/CPU_CYCLES.1000000.0.all.all.all" > > Sample at 0x1a960(0): invalid(ffffffffffffffff), app invalid(ffffffffffffffff), kernel /root/vmlinux-2.6.9-rc3-gnbm > > Opening "/var/lib/oprofile/samples/current/{root}//root/vmlinux-2.6.9-rc3-gnbm/{dep}/{root}//root/vmlinux-2.6.9-rc3-gnbm/{cg}/{root}//root/vmlinux-2.6.9-rc3-gnbm/CPU_CYCLES.1000000.0.all.all.all" > > Arc at 0x1a960(0): invalid(ffffffffffffffff), app invalid(ffffffffffffffff), kernel /root/vmlinux-2.6.9-rc3-gnbm > > Arc at 0x1ac60(0): invalid(ffffffffffffffff), app invalid(ffffffffffffffff), kernel /root/vmlinux-2.6.9-rc3-gnbm > > This all looks pretty broken. > > > callgraph filenames: > > profile_dep_set #1: > > lib_image: /root/vmlinux-2.6.9-rc3-gnbm > > profile_sample_files #0: > > sample_filename: > > callgraph filenames: > > /var/lib/oprofile/samples/current/{root}/root/vmlinux-2.6.9-rc3-gnbm/{dep}/{root}/root/vmlinux-2.6.9-rc3-gnbm/{cg}/{root}/root/vmlinux-2.6.9-rc3-gnbm/CPU_CYCLES.1000000.0.all.all.all > > Looks OK too. I'll have to check later what's expected. I didn't really > understand your comments above There are two profile_dep_sets, #0 has a flat sample filename and no callgraph sample filename, and #1 has vice versa. Indented: profile_classes: event: cpuinfo: CPU: Itanium 2, speed 1300 MHz (estimated) class #0: name: CPU_CYCLES:1000000 longname: Counted CPU_CYCLES events (CPU Cycles) with a unit mask of 0x00 (No unit mask) count 1000000 ptemplate: event: CPU_CYCLES count: 1000000 unitmask: tgid: tid: cpu: profiles_set #0: image: /root/vmlinux-2.6.9-rc3-gnbm profile_dep_set #0: lib_image: /root/vmlinux-2.6.9-rc3-gnbm profile_sample_files #0: sample_filename: /var/lib/oprofile/samples/current/{root}/root/vmlinux-2.6.9-rc3-gnbm/{dep}/{root}/root/vmlinux-2.6.9-rc3-gnbm/CPU_CYCLES.1000000.0.all.all.all callgraph filenames: profile_dep_set #1: lib_image: /root/vmlinux-2.6.9-rc3-gnbm profile_sample_files #0: sample_filename: callgraph filenames: /var/lib/oprofile/samples/current/{root}/root/vmlinux-2.6.9-rc3-gnbm/{dep}/{root}/root/vmlinux-2.6.9-rc3-gnbm/{cg}/{root}/root/vmlinux-2.6.9-rc3-gnbm/CPU_CYCLES.1000000.0.all.all.all Is that right? It looks suspicious to me, I was expecting a single profile_dep_set, like this: profile_classes: event: cpuinfo: CPU: Itanium 2, speed 1300 MHz (estimated) class #0: name: CPU_CYCLES:1000000 longname: Counted CPU_CYCLES events (CPU Cycles) with a unit mask of 0x00 (No unit mask) count 1000000 ptemplate: event: CPU_CYCLES count: 1000000 unitmask: tgid: tid: cpu: profiles_set #0: image: /root/vmlinux-2.6.9-rc3-gnbm profile_dep_set #0: lib_image: /root/vmlinux-2.6.9-rc3-gnbm profile_sample_files #0: sample_filename: /var/lib/oprofile/samples/current/{root}/root/vmlinux-2.6.9-rc3-gnbm/{dep}/{root}/root/vmlinux-2.6.9-rc3-gnbm/CPU_CYCLES.1000000.0.all.all.all callgraph filenames: /var/lib/oprofile/samples/current/{root}/root/vmlinux-2.6.9-rc3-gnbm/{dep}/{root}/root/vmlinux-2.6.9-rc3-gnbm/{cg}/{root}/root/vmlinux-2.6.9-rc3-gnbm/CPU_CYCLES.1000000.0.all.all.all Greg. -- Greg Banks, R&D Software Engineer, SGI Australian Software Group. I don't speak for SGI. |