Red Hat Bugzilla – Bug 214886
profile_tick not getting called
Last modified: 2007-11-30 17:07:37 EST
Description of problem:
Tools such as systemtap may hook into the profile_tick notifier
mechanism to get told of low-level timer interrupts. However,
on xen dom0/domU kernels (both fc6 and rhel5), this notifier
function is reportedly never called.
In contrast, the timer_interrupt dom0/domU function is
getting called as expected.
See systemtap bug #3279 for a little more background.
We're not sure whether this is intentional. If so, we'd
appreciate guidance as to what dom0/domU hooks we should use
for hooking into the timer interrupt.
Is this on i686 or x86-64, or both?
According the systemtap developer, broken on x86-64, works on i386.
Interesting, since the timer_interrupt() code is shared between the two.
This narrows it down quite a bit. Thank you.
From my reading of the code, it really does look like neither x86-64 or i686
would work with the current code.
Frank, could you confirm that the i386 test really was done with a Xen kernel?
I'm asking this because x86-64 and i686 share the same timer_interrupt()
function, which really only calls other functions that are shared between both
architectures. From timer_interrupt() down, there are no differences between
x86-64 and i686...
Martin, could you check/confirm that i686-xen does work with timer.profile?
Created attachment 141411 [details]
fixes profiling by calling profile_tick from timer interrupt
(In reply to comment #5)
> Martin, could you check/confirm that i686-xen does work with timer.profile?
No. There was probably some confusion in my initial bug report when I said
timer.profile worked on my 686 machine but not on my x86_64 systems. That turned
out to be because only the x86_64 systems were running xen kernels.
I can confirm that Rik's patch fixes things for me on x86_64.
QE ack for RHEL5.
Last week my patch was also merged upstream.
A package has been built which should help the problem described in
this bug report. This report is therefore being closed with a resolution
of CURRENTRELEASE. You may reopen this bug report if the solution does
not work for you.