s390/cpum_cf: Export event names in sysfs
Provide PMU event attributes for supported counters and export their symbolic names to the sysfs "events" directory. See the /sys/devices/cpum_cf/events/ directory for a list of available counters. Note that you might require counter set authorizations for the LPAR to use them. Signed-off-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
committed by
Martin Schwidefsky
parent
cf48ad8327
commit
c716832513
@ -1,11 +1,18 @@
|
||||
/*
|
||||
* Performance event support - s390 specific definitions.
|
||||
*
|
||||
* Copyright IBM Corp. 2009, 2012
|
||||
* Copyright IBM Corp. 2009, 2013
|
||||
* Author(s): Martin Schwidefsky <schwidefsky@de.ibm.com>
|
||||
* Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
|
||||
*/
|
||||
|
||||
#ifndef _ASM_S390_PERF_EVENT_H
|
||||
#define _ASM_S390_PERF_EVENT_H
|
||||
|
||||
#ifdef CONFIG_64BIT
|
||||
|
||||
#include <linux/perf_event.h>
|
||||
#include <linux/device.h>
|
||||
#include <asm/cpu_mf.h>
|
||||
|
||||
/* CPU-measurement counter facility */
|
||||
@ -15,7 +22,18 @@
|
||||
#define PMU_F_RESERVED 0x1000
|
||||
#define PMU_F_ENABLED 0x2000
|
||||
|
||||
#ifdef CONFIG_64BIT
|
||||
/* Perf defintions for PMU event attributes in sysfs */
|
||||
extern __init const struct attribute_group **cpumf_cf_event_group(void);
|
||||
extern ssize_t cpumf_events_sysfs_show(struct device *dev,
|
||||
struct device_attribute *attr,
|
||||
char *page);
|
||||
#define EVENT_VAR(_cat, _name) event_attr_##_cat##_##_name
|
||||
#define EVENT_PTR(_cat, _name) (&EVENT_VAR(_cat, _name).attr.attr)
|
||||
|
||||
#define CPUMF_EVENT_ATTR(cat, name, id) \
|
||||
PMU_EVENT_ATTR(name, EVENT_VAR(cat, name), id, cpumf_events_sysfs_show)
|
||||
#define CPUMF_EVENT_PTR(cat, name) EVENT_PTR(cat, name)
|
||||
|
||||
|
||||
/* Perf callbacks */
|
||||
struct pt_regs;
|
||||
@ -24,3 +42,4 @@ extern unsigned long perf_misc_flags(struct pt_regs *regs);
|
||||
#define perf_misc_flags(regs) perf_misc_flags(regs)
|
||||
|
||||
#endif /* CONFIG_64BIT */
|
||||
#endif /* _ASM_S390_PERF_EVENT_H */
|
||||
|
Reference in New Issue
Block a user