linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Andrew Murray <andrew.murray@arm.com>
To: Will Deacon <will.deacon@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Paul Mackerras <paulus@samba.org>,
	Shawn Guo <shawnguo@kernel.org>,
	x86@kernel.org, Russell King <linux@armlinux.org.uk>,
	Ingo Molnar <mingo@redhat.com>, Matt Turner <mattst88@gmail.com>,
	suzuki.poulose@arm.com, Sascha Hauer <s.hauer@pengutronix.de>,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Ivan Kokshaysky <ink@jurassic.park.msu.ru>,
	Thomas Gleixner <tglx@linutronix.de>,
	linux-arm-kernel@lists.infradead.org,
	Richard Henderson <rth@twiddle.net>,
	robin.murphy@arm.com, linux-kernel@vger.kernel.org,
	linux-alpha@vger.kernel.org, Borislav Petkov <bp@alien8.de>,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v3 00/12] perf/core: Generalise event exclusion checking
Date: Mon, 10 Dec 2018 23:51:58 +0000	[thread overview]
Message-ID: <20181210235158.GD13393@e119886-lin.cambridge.arm.com> (raw)
In-Reply-To: <20181207172516.GB2044@edgewater-inn.cambridge.arm.com>

On Fri, Dec 07, 2018 at 05:25:17PM +0000, Will Deacon wrote:
> On Thu, Dec 06, 2018 at 04:47:17PM +0000, Andrew Murray wrote:
> > Many PMU drivers do not have the capability to exclude counting events
> > that occur in specific contexts such as idle, kernel, guest, etc. These
> > drivers indicate this by returning an error in their event_init upon
> > testing the events attribute flags.
> > 
> > However this approach requires that each time a new event modifier is
> > added to perf, all the perf drivers need to be modified to indicate that
> > they don't support the attribute. This results in additional boiler-plate
> > code common to many drivers that needs to be maintained. Furthermore the
> > drivers are not consistent with regards to the error value they return
> > when reporting unsupported attributes.
> > 
> > This patchset allow PMU drivers to advertise their inability to exclude
> > based on context via a new capability: PERF_PMU_CAP_NO_EXCLUDE. This
> > allows the perf core to reject requests for exclusion events where there
> > is no support in the PMU.
> > 
> > This is a functional change, in particular:
> > 
> >  - Some drivers will now additionally (but correctly) report unsupported
> >    exclusion flags. It's typical for existing userspace tools such as
> >    perf to handle such errors by retrying the system call without the
> >    unsupported flags.
> > 
> >  - Drivers that do not support any exclusion that previously reported
> >    -EPERM or -EOPNOTSUPP will now report -EINVAL - this is consistent
> >    with the majority and results in userspace perf retrying without
> >    exclusion.
> > 
> > All drivers touched by this patchset have been compile tested.
> 
> For the bits under arch/arm/ and drivers/perf:
> 
> Acked-by: Will Deacon <will.deacon@arm.com>
> 
> Note that I've queued the TX2 uncore PMU for 4.21 [1], which could also
> benefit from your new flag.

Ah thanks for pointing this out, I'll send a patch in due course.

Thanks,

Andrwe Murray

> 
> Will
> 
> [1]
> https://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git/commit/?h=for-next/perf&id=69c32972d59388c041268e8206e8eb1acff29b9a

      reply	other threads:[~2018-12-10 23:54 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-06 16:47 [PATCH v3 00/12] perf/core: Generalise event exclusion checking Andrew Murray
2018-12-06 16:47 ` [PATCH v3 01/12] perf/doc: update design.txt for exclude_{host|guest} flags Andrew Murray
2018-12-06 16:47 ` [PATCH v3 02/12] perf/core: add function to test for event exclusion flags Andrew Murray
2018-12-06 16:47 ` [PATCH v3 03/12] perf/core: add PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs Andrew Murray
2018-12-06 16:47 ` [PATCH v3 04/12] alpha: perf/core: use PERF_PMU_CAP_NO_EXCLUDE Andrew Murray
2018-12-06 16:47 ` [PATCH v3 05/12] arm: perf: conditionally " Andrew Murray
2018-12-06 16:47 ` [PATCH v3 06/12] arm: perf/core: use PERF_PMU_CAP_NO_EXCLUDE for exclude incapable PMUs Andrew Murray
2018-12-09 12:43   ` Shawn Guo
2018-12-06 16:47 ` [PATCH v3 07/12] drivers/perf: " Andrew Murray
2018-12-06 16:47 ` [PATCH v3 08/12] " Andrew Murray
2018-12-06 16:47 ` [PATCH v3 09/12] powerpc: " Andrew Murray
2018-12-10  3:51   ` Michael Ellerman
2018-12-10  4:02   ` Madhavan Srinivasan
2018-12-06 16:47 ` [PATCH v3 10/12] x86: " Andrew Murray
2018-12-06 16:47 ` [PATCH v3 11/12] " Andrew Murray
2018-12-06 16:47 ` [PATCH v3 12/12] perf/core: remove unused perf_flags Andrew Murray
2018-12-07 17:25 ` [PATCH v3 00/12] perf/core: Generalise event exclusion checking Will Deacon
2018-12-10 23:51   ` Andrew Murray [this message]

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=20181210235158.GD13393@e119886-lin.cambridge.arm.com \
    --to=andrew.murray@arm.com \
    --cc=acme@kernel.org \
    --cc=bp@alien8.de \
    --cc=ink@jurassic.park.msu.ru \
    --cc=linux-alpha@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mark.rutland@arm.com \
    --cc=mattst88@gmail.com \
    --cc=mingo@redhat.com \
    --cc=paulus@samba.org \
    --cc=peterz@infradead.org \
    --cc=robin.murphy@arm.com \
    --cc=rth@twiddle.net \
    --cc=s.hauer@pengutronix.de \
    --cc=shawnguo@kernel.org \
    --cc=suzuki.poulose@arm.com \
    --cc=tglx@linutronix.de \
    --cc=will.deacon@arm.com \
    --cc=x86@kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).