Bug 214886 - profile_tick not getting called
Summary: profile_tick not getting called
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel-xen
Version: 5.0
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: ---
: ---
Assignee: Rik van Riel
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks: 215985
TreeView+ depends on / blocked
 
Reported: 2006-11-09 21:15 UTC by Frank Ch. Eigler
Modified: 2007-11-30 22:07 UTC (History)
2 users (show)

Fixed In Version: beta2
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2006-12-23 02:24:37 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
fixes profiling by calling profile_tick from timer interrupt (367 bytes, patch)
2006-11-16 20:35 UTC, Rik van Riel
no flags Details | Diff


Links
System ID Private Priority Status Summary Last Updated
Sourceware 3279 0 None None None Never

Description Frank Ch. Eigler 2006-11-09 21:15:15 UTC
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.
http://sourceware.org/bugzilla/show_bug.cgi?id=3279

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.

Comment 1 Rik van Riel 2006-11-09 21:22:32 UTC
Is this on i686 or x86-64, or both?

Comment 2 Frank Ch. Eigler 2006-11-09 21:27:08 UTC
According the systemtap developer, broken on x86-64, works on i386.

Comment 3 Rik van Riel 2006-11-09 22:02:54 UTC
Interesting, since the timer_interrupt() code is shared between the two.

This narrows it down quite a bit.  Thank you.

Comment 4 Rik van Riel 2006-11-15 22:28:58 UTC
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...

Comment 5 Frank Ch. Eigler 2006-11-15 22:57:59 UTC
Martin, could you check/confirm that i686-xen does work with timer.profile?

Comment 6 Rik van Riel 2006-11-16 20:35:12 UTC
Created attachment 141411 [details]
fixes profiling by calling profile_tick from timer interrupt

Comment 7 Martin Hunt 2006-11-20 14:16:05 UTC
(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.

Comment 8 Jay Turner 2006-11-20 19:57:34 UTC
QE ack for RHEL5.

Comment 9 Rik van Riel 2006-11-20 20:00:47 UTC
Last week my patch was also merged upstream.

Comment 11 Don Zickus 2006-11-29 22:26:51 UTC
in 2.6.18-1.2767.el5

Comment 12 RHEL Program Management 2006-12-23 02:24:37 UTC
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.



Note You need to log in before you can comment on or make changes to this bug.