Messages in this thread | | | Date | Wed, 28 Jan 2015 23:00:27 -0800 | From | Shaohua Li <> | Subject | Re: [RFC 2/2] perf: update userspace page info for software event |
| |
Ping!
On Fri, Jan 23, 2015 at 07:57:24AM -0800, Shaohua Li wrote: > On Fri, Jan 23, 2015 at 09:44:51AM +0100, Peter Zijlstra wrote: > > On Thu, Jan 22, 2015 at 01:09:02PM -0800, Shaohua Li wrote: > > > --- > > > kernel/events/core.c | 3 +++ > > > 1 file changed, 3 insertions(+) > > > > > > diff --git a/kernel/events/core.c b/kernel/events/core.c > > > index 4edde3e..4221240 100644 > > > --- a/kernel/events/core.c > > > +++ b/kernel/events/core.c > > > @@ -5950,6 +5950,7 @@ static int perf_swevent_add(struct perf_event *event, int flags) > > > } > > > > > > hlist_add_head_rcu(&event->hlist_entry, head); > > > + perf_event_update_userpage(event); > > > > > > return 0; > > > } > > > @@ -6419,6 +6420,7 @@ static int cpu_clock_event_add(struct perf_event *event, int flags) > > > { > > > if (flags & PERF_EF_START) > > > cpu_clock_event_start(event, flags); > > > + perf_event_update_userpage(event); > > > > > > return 0; > > > } > > > @@ -6493,6 +6495,7 @@ static int task_clock_event_add(struct perf_event *event, int flags) > > > { > > > if (flags & PERF_EF_START) > > > task_clock_event_start(event, flags); > > > + perf_event_update_userpage(event); > > > > > > return 0; > > > } > > > > How about the one I sent; which adds it to {start,stop} instead of add? > > {start,stop} is the right place to add them, although this add might be > > sufficient for your use case. > Hi Peter, > I tried {start, stop}, it doesn't work (doesn't get called in context > switch) and I still get a CLOCK_MONOTONIC. So I added it to .add, which > is called in context switch and I got correct thread time. Am I missing > anything? > > Thanks, > Shaohua
| |