From: Andrew Murray <andrew.murray@arm.com> To: Peter Zijlstra <peterz@infradead.org>, Ingo Molnar <mingo@redhat.com>, Arnaldo Carvalho de Melo <acme@kernel.org>, Richard Henderson <rth@twiddle.net>, Ivan Kokshaysky <ink@jurassic.park.msu.ru>, Matt Turner <mattst88@gmail.com>, Will Deacon <will.deacon@arm.com>, Mark Rutland <mark.rutland@arm.com>, Shawn Guo <shawnguo@kernel.org>, Sascha Hauer <s.hauer@pengutronix.de>, Benjamin Herrenschmidt <benh@kernel.crashing.org>, Paul Mackerras <paulus@samba.org>, Thomas Gleixner <tglx@linutronix.de>, Borislav Petkov <bp@alien8.de>, Russell King <linux@armlinux.org.uk>, suzuki.poulose@arm.com, robin.murphy@arm.com, Michael Ellerman <mpe@ellerman.id.au> Cc: x86@kernel.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-alpha@vger.kernel.org Subject: [PATCH v5 04/12] alpha: perf/core: strengthen exclude checks with PERF_PMU_CAP_NO_EXCLUDE Date: Thu, 10 Jan 2019 13:53:26 +0000 [thread overview] Message-ID: <1547128414-50693-5-git-send-email-andrew.murray@arm.com> (raw) In-Reply-To: <1547128414-50693-1-git-send-email-andrew.murray@arm.com> As the Alpha PMU doesn't support context exclusion let's advertise the PERF_PMU_CAP_NO_EXCLUDE capability. This ensures that perf will prevent us from handling events where any exclusion flags are set. Let's also remove the now unnecessary check for exclusion flags. This change means that __hw_perf_event_init will now also indicate that it doesn't support exclude_host and exclude_guest and will now implicitly return -EINVAL instead of -EPERM. This is likely more desirable as -EPERM will result in a kernel.perf_event_paranoid related warning from the perf userspace utility. Signed-off-by: Andrew Murray <andrew.murray@arm.com> --- arch/alpha/kernel/perf_event.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/arch/alpha/kernel/perf_event.c b/arch/alpha/kernel/perf_event.c index 5613aa37..4341ccf 100644 --- a/arch/alpha/kernel/perf_event.c +++ b/arch/alpha/kernel/perf_event.c @@ -630,12 +630,6 @@ static int __hw_perf_event_init(struct perf_event *event) return ev; } - /* The EV67 does not support mode exclusion */ - if (attr->exclude_kernel || attr->exclude_user - || attr->exclude_hv || attr->exclude_idle) { - return -EPERM; - } - /* * We place the event type in event_base here and leave calculation * of the codes to programme the PMU for alpha_pmu_enable() because @@ -771,6 +765,7 @@ static struct pmu pmu = { .start = alpha_pmu_start, .stop = alpha_pmu_stop, .read = alpha_pmu_read, + .capabilities = PERF_PMU_CAP_NO_EXCLUDE, }; -- 2.7.4
WARNING: multiple messages have this Message-ID (diff)
From: Andrew Murray <andrew.murray@arm.com> To: Peter Zijlstra <peterz@infradead.org>, Ingo Molnar <mingo@redhat.com>, Arnaldo Carvalho de Melo <acme@kernel.org>, Richard Henderson <rth@twiddle.net>, Ivan Kokshaysky <ink@jurassic.park.msu.ru>, Matt Turner <mattst88@gmail.com>, Will Deacon <will.deacon@arm.com>, Mark Rutland <mark.rutland@arm.com>, Shawn Guo <shawnguo@kernel.org>, Sascha Hauer <s.hauer@pengutronix.de>, Benjamin Herrenschmidt <benh@kernel.crashing.org>, Paul Mackerras <paulus@samba.org>, Thomas Gleixner <tglx@linutronix.de>, Borislav Petkov <bp@alien8.de>, Russell King <linux@armlinux.org.uk>, suzuki.poulose@arm.com, robin.murphy@arm.com, Michael Ellerman <mpe@ellerman.id.au> Cc: x86@kernel.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-alpha@vger.kernel.org Subject: [PATCH v5 04/12] alpha: perf/core: strengthen exclude checks with PERF_PMU_CAP_NO_EXCLUDE Date: Thu, 10 Jan 2019 13:53:26 +0000 [thread overview] Message-ID: <1547128414-50693-5-git-send-email-andrew.murray@arm.com> (raw) In-Reply-To: <1547128414-50693-1-git-send-email-andrew.murray@arm.com> As the Alpha PMU doesn't support context exclusion let's advertise the PERF_PMU_CAP_NO_EXCLUDE capability. This ensures that perf will prevent us from handling events where any exclusion flags are set. Let's also remove the now unnecessary check for exclusion flags. This change means that __hw_perf_event_init will now also indicate that it doesn't support exclude_host and exclude_guest and will now implicitly return -EINVAL instead of -EPERM. This is likely more desirable as -EPERM will result in a kernel.perf_event_paranoid related warning from the perf userspace utility. Signed-off-by: Andrew Murray <andrew.murray@arm.com> --- arch/alpha/kernel/perf_event.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/arch/alpha/kernel/perf_event.c b/arch/alpha/kernel/perf_event.c index 5613aa37..4341ccf 100644 --- a/arch/alpha/kernel/perf_event.c +++ b/arch/alpha/kernel/perf_event.c @@ -630,12 +630,6 @@ static int __hw_perf_event_init(struct perf_event *event) return ev; } - /* The EV67 does not support mode exclusion */ - if (attr->exclude_kernel || attr->exclude_user - || attr->exclude_hv || attr->exclude_idle) { - return -EPERM; - } - /* * We place the event type in event_base here and leave calculation * of the codes to programme the PMU for alpha_pmu_enable() because @@ -771,6 +765,7 @@ static struct pmu pmu = { .start = alpha_pmu_start, .stop = alpha_pmu_stop, .read = alpha_pmu_read, + .capabilities = PERF_PMU_CAP_NO_EXCLUDE, }; -- 2.7.4 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-01-10 13:54 UTC|newest] Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-01-10 13:53 [PATCH v5 00/12] perf/core: Generalise event exclusion checking Andrew Murray 2019-01-10 13:53 ` Andrew Murray 2019-01-10 13:53 ` [PATCH v5 01/12] perf/doc: update design.txt for exclude_{host|guest} flags Andrew Murray 2019-01-10 13:53 ` Andrew Murray 2019-01-21 11:16 ` [tip:perf/core] perf/doc: Update " tip-bot for Andrew Murray 2019-01-10 13:53 ` [PATCH v5 02/12] perf/core: add function to test for event exclusion flags Andrew Murray 2019-01-10 13:53 ` Andrew Murray 2019-01-21 11:16 ` [tip:perf/core] perf/core: Add " tip-bot for Andrew Murray 2019-01-10 13:53 ` [PATCH v5 03/12] perf/core: add PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs Andrew Murray 2019-01-10 13:53 ` Andrew Murray 2019-01-21 11:17 ` [tip:perf/core] perf/core: Add " tip-bot for Andrew Murray 2019-01-10 13:53 ` Andrew Murray [this message] 2019-01-10 13:53 ` [PATCH v5 04/12] alpha: perf/core: strengthen exclude checks with PERF_PMU_CAP_NO_EXCLUDE Andrew Murray 2019-01-21 11:17 ` [tip:perf/core] perf/core, arch/alpha: Strengthen exclusion " tip-bot for Andrew Murray 2019-01-10 13:53 ` [PATCH v5 05/12] arm: perf: conditionally use PERF_PMU_CAP_NO_EXCLUDE Andrew Murray 2019-01-10 13:53 ` Andrew Murray 2019-01-21 11:18 ` [tip:perf/core] perf/core, arch/arm: Use PERF_PMU_CAP_NO_EXCLUDE conditionally tip-bot for Andrew Murray 2019-01-10 13:53 ` [PATCH v5 06/12] arm: perf/core: use PERF_PMU_CAP_NO_EXCLUDE for exclude incapable PMUs Andrew Murray 2019-01-10 13:53 ` Andrew Murray 2019-01-21 11:19 ` [tip:perf/core] perf/core, arch/arm: Use PERF_PMU_CAP_NO_EXCLUDE for exclusion " tip-bot for Andrew Murray 2019-01-10 13:53 ` [PATCH v5 07/12] drivers/perf: perf/core: use PERF_PMU_CAP_NO_EXCLUDE for exclude " Andrew Murray 2019-01-10 13:53 ` Andrew Murray 2019-01-21 11:19 ` [tip:perf/core] For drivers that do not support context exclusion let's advertise the PERF_PMU_CAP_NO_EXCLUDE capability. This ensures that perf will prevent us from handling events where any exclusion flags are set. Let's also remove the now unnecessary check for exclusion flags tip-bot for Andrew Murray 2019-01-10 13:53 ` [PATCH v5 08/12] drivers/perf: perf/core: strengthen exclude checks with PERF_PMU_CAP_NO_EXCLUDE Andrew Murray 2019-01-10 13:53 ` Andrew Murray 2019-01-21 11:20 ` [tip:perf/core] perf/drivers: Strengthen exclusion " tip-bot for Andrew Murray 2019-01-10 13:53 ` [PATCH v5 09/12] powerpc: perf/core: use PERF_PMU_CAP_NO_EXCLUDE for exclude incapable PMUs Andrew Murray 2019-01-10 13:53 ` Andrew Murray 2019-01-21 11:21 ` [tip:perf/core] perf/core, arch/powerpc: use PERF_PMU_CAP_NO_EXCLUDE for exclusion " tip-bot for Andrew Murray 2019-01-10 13:53 ` [PATCH v5 10/12] x86: perf/core: use PERF_PMU_CAP_NO_EXCLUDE for exclude " Andrew Murray 2019-01-10 13:53 ` Andrew Murray 2019-01-21 11:21 ` [tip:perf/core] perf/core, arch/x86: Use PERF_PMU_CAP_NO_EXCLUDE for exclusion " tip-bot for Andrew Murray 2019-01-10 13:53 ` [PATCH v5 11/12] x86: perf/core: strengthen exclude checks with PERF_PMU_CAP_NO_EXCLUDE Andrew Murray 2019-01-10 13:53 ` Andrew Murray 2019-01-21 11:22 ` [tip:perf/core] perf/core, arch/x86: Strengthen exclusion " tip-bot for Andrew Murray 2019-01-10 13:53 ` [PATCH v5 12/12] perf/core: remove unused perf_flags Andrew Murray 2019-01-10 13:53 ` Andrew Murray 2019-01-21 11:23 ` [tip:perf/core] perf/core: Remove " tip-bot for Andrew Murray
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=1547128414-50693-5-git-send-email-andrew.murray@arm.com \ --to=andrew.murray@arm.com \ --cc=acme@kernel.org \ --cc=benh@kernel.crashing.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=mpe@ellerman.id.au \ --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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.