From: Peter Zijlstra <a.p.zijlstra@chello.nl>
To: Will Deacon <will.deacon@arm.com>
Cc: Deng-Cheng Zhu <dengcheng.zhu@gmail.com>,
ralf@linux-mips.org, fweisbec@gmail.com,
linux-mips@linux-mips.org, linux-kernel@vger.kernel.org,
wuzhangjin@gmail.com, paulus@samba.org, mingo@elte.hu,
acme@redhat.com
Subject: Re: [PATCH 3/5] MIPS/Perf-events: Check event state in validate_event()
Date: Fri, 19 Nov 2010 12:27:31 +0100 [thread overview]
Message-ID: <1290166051.2109.1539.camel@laptop> (raw)
In-Reply-To: <1290159806.9342.7.camel@e102144-lin.cambridge.arm.com>
On Fri, 2010-11-19 at 09:43 +0000, Will Deacon wrote:
> Hi Deng-Cheng,
>
> On Thu, 2010-11-18 at 06:56 +0000, Deng-Cheng Zhu wrote:
> > Ignore events that are not for this PMU or are in off/error state.
> >
> Sorry I didn't see this before, thanks for pointing out that you
> had included it for MIPS.
>
> > Signed-off-by: Deng-Cheng Zhu <dengcheng.zhu@gmail.com>
> > ---
> > arch/mips/kernel/perf_event.c | 2 +-
> > 1 files changed, 1 insertions(+), 1 deletions(-)
> >
> > diff --git a/arch/mips/kernel/perf_event.c b/arch/mips/kernel/perf_event.c
> > index 1ee44a3..9c6442a 100644
> > --- a/arch/mips/kernel/perf_event.c
> > +++ b/arch/mips/kernel/perf_event.c
> > @@ -486,7 +486,7 @@ static int validate_event(struct cpu_hw_events *cpuc,
> > {
> > struct hw_perf_event fake_hwc = event->hw;
> >
> > - if (event->pmu && event->pmu != &pmu)
> > + if (event->pmu != &pmu || event->state <= PERF_EVENT_STATE_OFF)
> > return 0;
> >
> > return mipspmu->alloc_counter(cpuc, &fake_hwc) >= 0;
>
> So this is the opposite of what we're doing on ARM. Our
> approach is to ignore events that are OFF (or in the ERROR
> state) or that belong to a different PMU. We do this by
> allowing them to *pass* validation (i.e. by returning 1 above).
> This means that we won't unconditionally fail a mixed event group.
>
> x86 does something similar in the collect_events function.
Right, note that the generic code only allows mixing with software
events, so simply accepting them is ok as software events give the
guarantee they're always schedulable.
next prev parent reply other threads:[~2010-11-19 11:27 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-18 6:56 [PATCH 0/5] MIPS/Perf-events: Sync with mainline upper layer Deng-Cheng Zhu
2010-11-18 6:56 ` [PATCH 1/5] MIPS/Perf-events: Work with irq_work Deng-Cheng Zhu
2010-11-25 6:58 ` Peter Zijlstra
2010-11-18 6:56 ` [PATCH 2/5] MIPS/Perf-events: Work with the new PMU interface Deng-Cheng Zhu
2010-11-25 7:01 ` Peter Zijlstra
2010-11-18 6:56 ` [PATCH 3/5] MIPS/Perf-events: Check event state in validate_event() Deng-Cheng Zhu
2010-11-19 9:43 ` Will Deacon
2010-11-19 11:27 ` Peter Zijlstra [this message]
2010-11-19 12:03 ` Will Deacon
2010-11-19 12:09 ` Peter Zijlstra
2010-11-19 11:30 ` Deng-Cheng Zhu
2010-11-19 12:05 ` Will Deacon
2010-11-18 6:56 ` [PATCH 4/5] MIPS/Perf-events: Work with the new callchain interface Deng-Cheng Zhu
2010-11-19 14:34 ` Frederic Weisbecker
2010-11-23 7:06 ` Deng-Cheng Zhu
2010-11-18 6:56 ` [PATCH 5/5] MIPS/Perf-events: Use unsigned delta for right shift in event update Deng-Cheng Zhu
2010-11-18 9:27 ` Will Deacon
2010-11-19 7:16 ` Deng-Cheng Zhu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1290166051.2109.1539.camel@laptop \
--to=a.p.zijlstra@chello.nl \
--cc=acme@redhat.com \
--cc=dengcheng.zhu@gmail.com \
--cc=fweisbec@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mips@linux-mips.org \
--cc=mingo@elte.hu \
--cc=paulus@samba.org \
--cc=ralf@linux-mips.org \
--cc=will.deacon@arm.com \
--cc=wuzhangjin@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox