PMC enters debugger with NMI on ctrl-C

From: Robert Watson <rwatson_at_FreeBSD.org>
Date: Sat, 20 May 2006 23:34:58 +0100 (BST)
Got the following today while using PMC to sample a multi-process web server 
on an SMP Xeon box:

tiger-2# ./httpd 80 /tmp/zero &
[1] 769
tiger-2#
tiger-2#
tiger-2# pmcstat -S unhalted-cycles -O /tmp/sample.out
^CNMI ... going to debugger
[thread pid 898 tid 100175 ]
Stopped at      p4_stop_pmc+0x70:       movl    $0,%eax
db> bt
Tracing pid 898 tid 100175 td 0xc765c360
p4_stop_pmc(0,1,1,0,0) at p4_stop_pmc+0x70
pmc_release_pmc_descriptor(c703ca00,c06c03f3,c1032860,c103cac8,e992fb18) at 
pmc_release_pmc_descriptor+0x61
pmc_syscall_handler(c765c360,e992fd04,2,202,c09c07d8) at 
pmc_syscall_handler+0xf6f
syscall(3b,3b,bfbf003b,0,8050ee0) at syscall+0x2ee
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (210, FreeBSD ELF32, pmc_syscall_handler), eip = 0x280d104d, esp = 
0xbfbfe6e0, ebp = 0xbfbfe6f8 ---
db>

I'll leave it in the debugger overnight in case there's anything useful to be 
done with it.

BTW, saw some oddness.  I capture the PMC samples on one box, and post-process 
on another.  This results in the following oddness: I used the above pmcstat 
command to track unhalted-cycles on a Dual Xeon, then post-processed on an 
amd64 box, so pmcstat generated gmon output with the name 
p4-global-power-events.  Perhaps pmcstat should capture the event name in its 
data file so that when doing later post-processing, it can use the names from 
the machine the captures were on, rather than the names of the machine the 
processing is being done on?

Robert N M Watson
Received on Sat May 20 2006 - 20:34:59 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:56 UTC