mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
710 B
30 lines
710 B
/* SPDX-License-Identifier: GPL-2.0 */ |
|
#ifndef __ARCH_X86_EVENTS_PROBE_H__ |
|
#define __ARCH_X86_EVENTS_PROBE_H__ |
|
#include <linux/sysfs.h> |
|
|
|
struct perf_msr { |
|
u64 msr; |
|
struct attribute_group *grp; |
|
bool (*test)(int idx, void *data); |
|
bool no_check; |
|
u64 mask; |
|
}; |
|
|
|
unsigned long |
|
perf_msr_probe(struct perf_msr *msr, int cnt, bool no_zero, void *data); |
|
|
|
#define __PMU_EVENT_GROUP(_name) \ |
|
static struct attribute *attrs_##_name[] = { \ |
|
&attr_##_name.attr.attr, \ |
|
NULL, \ |
|
} |
|
|
|
#define PMU_EVENT_GROUP(_grp, _name) \ |
|
__PMU_EVENT_GROUP(_name); \ |
|
static struct attribute_group group_##_name = { \ |
|
.name = #_grp, \ |
|
.attrs = attrs_##_name, \ |
|
} |
|
|
|
#endif /* __ARCH_X86_EVENTS_PROBE_H__ */
|
|
|