linux/arch/s390/kernel
Thomas Richter d0d3e218d5 s390/cpum_cf: open access to hwctr device for CAP_PERFMON privileged process
The device /dev/hwctr was introduced to access complete
CPU Measurement facility counter sets via an ioctl system call.
The access the to device is limited to privileged processes
running as root or superuser. The capability CAP_SYS_ADMIN
is required.  The device permissions are read/write for the
device owner root. There is no need for this restriction.

Make the device access permission read/write for all and
reduce the capabilities to CAP_PERFMON.
Any user space program with the CAP_PERFMON capability assigned to it
can now read and display the CPU Measurement facility counter sets.

For more details on perf tool usage and security, see linux
documentation in Documentation/admin-guide/perf-security.rst.

Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
Acked-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
2023-06-20 19:55:00 +02:00
..
syscalls s390: wire up memfd_secret system call 2023-04-20 11:36:29 +02:00
vdso32 s390 updates for the 6.4 merge window 2023-04-30 11:43:31 -07:00
vdso64 s390 updates for the 6.4 merge window 2023-04-30 11:43:31 -07:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
abs_lowcore.c s390/mm: allocate Absolute Lowcore Area in decompressor 2023-01-13 14:15:06 +01:00
alternative.c s390/alternatives: remove padding generation code 2022-05-17 15:16:28 +02:00
asm-offsets.c s390/entry: sort out physical vs virtual pointers usage in sie64a 2022-10-26 14:27:41 +02:00
audit.c audit: add support for the openat2 syscall 2021-10-01 16:52:48 -04:00
audit.h
cache.c s390/cache: change type from unsigned long long to unsigned long 2023-01-25 20:51:09 +01:00
compat_audit.c audit: add support for the openat2 syscall 2021-10-01 16:52:48 -04:00
compat_linux.c
compat_linux.h s390/compat: cleanup compat_linux.h header file 2022-05-06 20:45:16 +02:00
compat_ptrace.h
compat_signal.c s390/vx: use simple assignments to access __vector128 members 2023-02-09 20:11:23 +01:00
cpcmd.c s390/cpcmd: use physical address for command and response 2021-10-26 15:21:28 +02:00
cpufeature.c s390/uvdevice: autoload module based on CPU facility 2022-07-19 16:18:49 +02:00
crash_dump.c s390/vx: use simple assignments to access __vector128 members 2023-02-09 20:11:23 +01:00
debug.c s390/debug: replace zero-length array with flexible-array member 2023-04-13 17:36:28 +02:00
diag.c s390/diag: make __diag8c_tmp_amode31 static 2023-02-06 11:13:54 +01:00
dis.c s390/disassembler: update opcode table 2021-12-16 19:58:07 +01:00
dumpstack.c s390/dumpstack: simplify in stack logic code 2023-04-04 18:34:55 +02:00
early.c s390/kasan: move shadow mapping to decompressor 2023-03-20 11:02:51 +01:00
early_printk.c s390/sclp: remove unused sclp_early_printk_forced 2020-09-21 08:08:44 +02:00
earlypgm.S s390/earlypgm: use SYM* macros instead of ENTRY(), etc. 2023-04-19 17:24:17 +02:00
ebcdic.c
entry.h s390: move __amode31_base declaration to proper header file 2023-01-13 14:15:07 +01:00
entry.S s390/entry: use SYM* macros instead of ENTRY(), etc. 2023-04-19 17:24:18 +02:00
fpu.c s390/vx: add vx-insn.h wrapper include file 2022-12-06 16:18:23 +01:00
ftrace.c s390/ftrace: do not assume module_alloc() returns executable memory 2023-04-13 17:36:26 +02:00
ftrace.h s390: raise minimum supported machine generation to z10 2022-03-10 15:58:17 +01:00
guarded_storage.c
head64.S s390/head64: use SYM* macros instead of ENTRY(), etc. 2023-04-19 17:24:17 +02:00
idle.c sched/idle: Mark arch_cpu_idle_dead() __noreturn 2023-03-08 08:44:28 -08:00
ima_arch.c
ipl.c s390/ipl: add REIPL_CLEAR flag to os_info 2023-06-01 17:07:56 +02:00
ipl_vmparm.c s390/cio: remove unused include linux/spinlock.h from cio.h 2021-07-27 09:39:13 +02:00
irq.c s390/irq,idle: simplify idle check 2023-02-15 11:07:01 +01:00
jump_label.c jump_label: make initial NOP patching the special case 2022-06-24 09:48:55 +02:00
kdebugfs.c
kexec_elf.c
kexec_image.c
kprobes.c s390/mm: use set_memory_*() helpers instead of open coding 2023-04-13 17:36:26 +02:00
kprobes.h s390/kprobes: define insn cache ops within private header file 2022-11-23 16:24:07 +01:00
kprobes_insn_page.S s390/kprobes: use SYM* macros instead of ENTRY(), etc. 2023-04-19 17:24:18 +02:00
lgr.c s390/lgr: use simple assignment instead of memcpy 2022-02-06 23:31:29 +01:00
machine_kexec.c s390/kdump: remove nodat stack restriction for calling nodat functions 2023-04-19 17:24:16 +02:00
machine_kexec_file.c s390/kexec: fix ipl report address for kdump 2023-01-10 14:37:02 +01:00
machine_kexec_reloc.c s390/kaslr: add support for R_390_JMP_SLOT relocation type 2020-05-20 10:13:27 +02:00
Makefile s390/cpum_cf: merge source files for CPU Measurement counter facility 2023-01-25 20:51:10 +01:00
mcount.S s390 updates for the 6.4 merge window 2023-04-30 11:43:31 -07:00
module.c s390/module: fix rela calculation for R_390_GOTENT 2023-06-20 19:55:00 +02:00
nmi.c s390/mcck: cleanup user process termination path 2023-02-28 13:19:05 +01:00
nospec-branch.c s390: raise minimum supported machine generation to z10 2022-03-10 15:58:17 +01:00
nospec-sysfs.c s390: introduce nospec_uses_trampoline() 2021-10-26 15:21:29 +02:00
numa.c drivers/base/node: consolidate node device subsystem initialization in node_dev_init() 2022-03-22 15:57:10 -07:00
os_info.c s390/mm: allocate Absolute Lowcore Area in decompressor 2023-01-13 14:15:06 +01:00
perf_cpum_cf.c s390/cpum_cf: open access to hwctr device for CAP_PERFMON privileged process 2023-06-20 19:55:00 +02:00
perf_cpum_cf_events.c s390/cpumf: add new extended counter set for IBM z16 2022-05-16 10:58:33 +02:00
perf_cpum_sf.c s390/cpum_sf: remove flag PERF_CPUM_SF_FULL_BLOCKS 2023-03-27 17:19:52 +02:00
perf_event.c s390/stack: add union to reflect kvm stack slot usages 2022-06-01 12:03:17 +02:00
perf_pai_crypto.c s390/pai_crypto: replace atomic_t with refcount_t 2023-05-15 14:12:14 +02:00
perf_pai_ext.c s390/pai_ext: replace atomic_t with refcount_t 2023-05-15 14:12:14 +02:00
perf_regs.c perf/arch: Remove perf_sample_data::regs_user_copy 2020-11-09 18:12:34 +01:00
process.c s390: trim ancient junk from copy_thread() 2023-03-13 09:16:42 +01:00
processor.c s390/bp: remove s390_isolate_bp_guest() 2023-03-13 09:16:42 +01:00
ptrace.c s390/ptrace: fix PTRACE_GET_LAST_BREAK error handling 2023-03-27 17:23:08 +02:00
reipl.S s390/reipl: use SYM* macros instead of ENTRY(), etc. 2023-04-19 17:24:17 +02:00
relocate_kernel.S s390/relocate_kernel: adjust indentation 2023-04-19 17:24:18 +02:00
rethook.c s390/rethook: add local rethook header file 2023-02-06 11:13:53 +01:00
rethook.h s390/rethook: add local rethook header file 2023-02-06 11:13:53 +01:00
runtime_instr.c s390/runtime_instrumentation: fix storage key handling 2020-08-17 13:17:10 +02:00
setup.c s390 updates for the 6.4 merge window 2023-04-30 11:43:31 -07:00
signal.c s390/vx: use simple assignments to access __vector128 members 2023-02-09 20:11:23 +01:00
smp.c s390 updates for the 6.4 merge window 2023-04-30 11:43:31 -07:00
stacktrace.c s390/kprobes: replace kretprobe with rethook 2023-01-22 18:42:35 +01:00
sthyi.c s390/sthyi: use register pair instead of register asm 2021-06-18 16:41:22 +02:00
syscall.c s390: add support for BEAR enhancement facility 2021-10-26 15:21:29 +02:00
sysinfo.c s390/extable: move EX_TABLE define to asm-extable.h 2022-03-08 00:33:00 +01:00
text_amode31.S s390/amode31: use SYM* macros instead of ENTRY(), etc. 2023-04-19 17:24:16 +02:00
time.c s390/stp: clock_delta should be signed 2022-05-11 14:40:57 +02:00
topology.c s390 updates for the 6.4 merge window 2023-04-30 11:43:31 -07:00
trace.c s390/ftrace: fix potential crashes when switching tracers 2020-04-22 16:20:55 +02:00
traps.c s390/traps: improve panic message for translation-specification exception 2022-03-27 22:18:38 +02:00
unwind_bc.c s390/unwind: avoid duplicated unwinding entries for kretprobes 2022-03-27 22:18:39 +02:00
uprobes.c s390: raise minimum supported machine generation to z10 2022-03-10 15:58:17 +01:00
uv.c KVM: s390: fix race in gmap_make_secure() 2023-05-04 18:26:27 +02:00
vdso.c mm: remove zap_page_range and create zap_vma_pages 2023-01-18 17:12:55 -08:00
vmlinux.lds.S s390: make extables read-only 2023-04-04 18:34:55 +02:00
vtime.c cputime: remove cputime_to_nsecs fallback 2022-12-27 12:52:17 +01:00