[PATCH V2 0/4] perf/core: Assert PERF_EVENT_FLAG_ARCH is followed

Anshuman Khandual posted 4 patches 3 years, 7 months ago
There is a newer version of this series
arch/x86/events/perf_event.h | 20 ++++++++++++++++++++
drivers/perf/arm_spe_pmu.c   |  4 +++-
include/linux/perf/arm_pmu.h |  9 +++++----
include/linux/perf_event.h   |  4 +++-
4 files changed, 31 insertions(+), 6 deletions(-)
[PATCH V2 0/4] perf/core: Assert PERF_EVENT_FLAG_ARCH is followed
Posted by Anshuman Khandual 3 years, 7 months ago
This series ensures that PERF_EVENT_FLAG_ARCH mask is followed correctly
while defining all the platform specific hardware event flags. But first
this expands PERF_EVENT_FLAG_ARCH with another four bits, to accommodate
some x86 platform event flags which were going beyond the existing mask.

This series applies on v6.0-rc4.

Changes in V2:

- Added first patch to expand PERF_EVENT_FLAG_ARCH
- Converted all BUILD_BUG_ON() into static_assert() 

Changes in V1:

https://lore.kernel.org/all/20220829065507.177781-1-anshuman.khandual@arm.com/

Cc: James Clark <james.clark@arm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-perf-users@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: x86@kernel.org

Anshuman Khandual (4):
  perf/core: Expand PERF_EVENT_FLAG_ARCH
  perf/core: Assert PERF_EVENT_FLAG_ARCH does not overlap with generic flags
  arm64/perf: Assert all platform event flags are within PERF_EVENT_FLAG_ARCH
  x86/perf: Assert all platform event flags are within PERF_EVENT_FLAG_ARCH

 arch/x86/events/perf_event.h | 20 ++++++++++++++++++++
 drivers/perf/arm_spe_pmu.c   |  4 +++-
 include/linux/perf/arm_pmu.h |  9 +++++----
 include/linux/perf_event.h   |  4 +++-
 4 files changed, 31 insertions(+), 6 deletions(-)

-- 
2.25.1