linux/arch/alpha/kernel
Andrew Murray 6dd273f446 perf/core, arch/alpha: Strengthen exclusion checks with PERF_PMU_CAP_NO_EXCLUDE
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>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Matt Turner <mattst88@gmail.com>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Will Deacon <will.deacon@arm.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linuxppc-dev@lists.ozlabs.org
Cc: robin.murphy@arm.com
Cc: suzuki.poulose@arm.com
Link: https://lkml.kernel.org/r/1547128414-50693-5-git-send-email-andrew.murray@arm.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-01-21 11:01:21 +01:00
..
syscalls alpha: add system call table generation support 2018-12-21 11:57:56 -05:00
.gitignore
asm-offsets.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
audit.c alpha: Enable system-call auditing support. 2014-01-31 09:21:55 -08:00
binfmt_loader.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bugs.c alpha: Implement CPU vulnerabilities sysfs functions. 2018-04-07 15:04:04 -07:00
console.c vgacon: Set VGA struct resource types 2017-12-18 23:07:43 -06:00
core_apecs.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_cia.c mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
core_irongate.c mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
core_lca.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_marvel.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_mcpcia.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_polaris.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
core_t2.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_titan.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_tsunami.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_wildfire.c alpha: fix spelling mistake QSD_PORT_ACTUVE -> QSD_PORT_ACTIVE 2018-12-21 11:57:57 -05:00
entry.S alpha: unify the glue for sigreturn-like syscalls 2018-08-16 21:03:35 -04:00
err_common.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
err_ev6.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
err_ev7.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
err_impl.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
err_marvel.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
err_titan.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
es1888.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
gct.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
head.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
io.c alpha: io: reorder barriers to guarantee writeX() and iowriteX() ordering #2 2018-05-22 18:10:36 -07:00
irq_alpha.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
irq_i8259.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
irq_impl.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
irq_pyxis.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
irq_srm.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
irq.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
machvec_impl.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
Makefile alpha: Implement CPU vulnerabilities sysfs functions. 2018-04-07 15:04:04 -07:00
module.c alpha: support R_ALPHA_REFLONG relocations for module loading 2017-08-29 12:01:52 -07:00
osf_sys.c alpha: Remove some unused variables 2018-12-21 16:02:03 -05:00
pc873xx.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pc873xx.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pci_impl.h alpha: fix reboot on Avanti platform 2018-01-20 17:01:10 -08:00
pci_iommu.c dma-mapping: zero memory returned from dma_alloc_* 2018-12-20 08:13:52 +01:00
pci-noop.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
pci-sysfs.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pci.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
perf_event.c perf/core, arch/alpha: Strengthen exclusion checks with PERF_PMU_CAP_NO_EXCLUDE 2019-01-21 11:01:21 +01:00
process.c alpha: fix crash if pthread_create races with signal delivery 2018-01-20 17:01:16 -08:00
proto.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ptrace.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
rtc.c alpha: rtc: simplify alpha_rtc_init 2018-12-21 11:57:57 -05:00
setup.c alpha: fix hang caused by the bootmem removal 2018-12-14 15:05:44 -08:00
signal.c Remove 'type' argument from access_ok() function 2019-01-03 18:57:57 -08:00
smc37c93x.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
smc37c669.c alpha: squash lines for immediate return 2017-09-04 12:04:32 -07:00
smp.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
srm_env.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
srmcons.c treewide: setup_timer() -> timer_setup() 2017-11-21 15:57:07 -08:00
sys_alcor.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_cabriolet.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_dp264.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_eb64p.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_eiger.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_jensen.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sys_marvel.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sys_miata.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_mikasa.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_nautilus.c mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
sys_noritake.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_rawhide.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_ruffian.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_rx164.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_sable.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_sio.c alpha/PCI: Fix noname IRQ level detection 2018-01-20 16:22:36 -08:00
sys_sx164.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_takara.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_titan.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sys_wildfire.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
systbls.S alpha: generate uapi header and syscall table header files 2018-12-21 11:57:56 -05:00
time.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
traps.c signal/alpha: Use force_sig_fault where appropriate 2018-04-25 10:40:59 -05:00
vmlinux.lds.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00