Commit b6c00fb9 authored by Kan Liang's avatar Kan Liang Committed by Ingo Molnar

perf: Add PMU_FORMAT_ATTR_SHOW

The macro PMU_FORMAT_ATTR facilitates the definition of both the "show"
function and "format_attr". But it only works for a non-hybrid platform.
For a hybrid platform, the name "format_attr_hybrid_" is used.

The definition of the "show" function can be shared between a non-hybrid
platform and a hybrid platform. Add a new macro PMU_FORMAT_ATTR_SHOW.

No functional change. The PMU_FORMAT_ATTR_SHOW will be used in the
following patch.
Signed-off-by: default avatarKan Liang <kan.liang@linux.intel.com>
Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
Acked-by: default avatarPeter Zijlstra <peterz@infradead.org>
Link: https://lore.kernel.org/r/20230104201349.1451191-1-kan.liang@linux.intel.com
parent 8e791f7e
...@@ -1724,7 +1724,7 @@ static struct perf_pmu_events_attr _var = { \ ...@@ -1724,7 +1724,7 @@ static struct perf_pmu_events_attr _var = { \
.id = _id, } \ .id = _id, } \
})[0].attr.attr) })[0].attr.attr)
#define PMU_FORMAT_ATTR(_name, _format) \ #define PMU_FORMAT_ATTR_SHOW(_name, _format) \
static ssize_t \ static ssize_t \
_name##_show(struct device *dev, \ _name##_show(struct device *dev, \
struct device_attribute *attr, \ struct device_attribute *attr, \
...@@ -1733,6 +1733,9 @@ _name##_show(struct device *dev, \ ...@@ -1733,6 +1733,9 @@ _name##_show(struct device *dev, \
BUILD_BUG_ON(sizeof(_format) >= PAGE_SIZE); \ BUILD_BUG_ON(sizeof(_format) >= PAGE_SIZE); \
return sprintf(page, _format "\n"); \ return sprintf(page, _format "\n"); \
} \ } \
#define PMU_FORMAT_ATTR(_name, _format) \
PMU_FORMAT_ATTR_SHOW(_name, _format) \
\ \
static struct device_attribute format_attr_##_name = __ATTR_RO(_name) static struct device_attribute format_attr_##_name = __ATTR_RO(_name)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment