Commit 7b61c8bf authored by Xiaochen Shen's avatar Xiaochen Shen
Browse files

dmaengine: idxd: Fix kABI for IDXD perfmon cpu hot plug state

category: bugfix
bugzilla: https://gitee.com/openeuler/intel-kernel/issues/I596WO


CVE: NA

Intel-SIG: dmaengine: idxd: Fix kABI for IDXD perfmon cpu hot plug state.

-------------------------------------------------

In commit ("dmaengine: idxd: Add IDXD performance monitor support"), the
introduction of Intel IDXD performance monitor feature adds new CPU hot
plug state 'CPUHP_AP_PERF_X86_IDXD_ONLINE' in the middle of data
structure 'enum cpuhp_state' that causes kABI breakage.

Fix it by reusing other arch's entry for CPUHP_AP_PERF_X86_IDXD_ONLINE
to avoid kABI breakage.

Signed-off-by: default avatarXiaochen Shen <xiaochen.shen@intel.com>
parent 1ac6171e
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@
#define __CPUHOTPLUG_H

#include <linux/types.h>
#include <linux/kabi.h>

/*
 * CPU-up			CPU-down
@@ -169,7 +170,7 @@ enum cpuhp_state {
	CPUHP_AP_PERF_X86_RAPL_ONLINE,
	CPUHP_AP_PERF_X86_CQM_ONLINE,
	CPUHP_AP_PERF_X86_CSTATE_ONLINE,
	CPUHP_AP_PERF_X86_IDXD_ONLINE,
	/* kABI: CPUHP_AP_PERF_X86_IDXD_ONLINE, */
	CPUHP_AP_PERF_S390_CF_ONLINE,
	CPUHP_AP_PERF_S390_SF_ONLINE,
	CPUHP_AP_PERF_ARM_CCI_ONLINE,
@@ -202,6 +203,9 @@ enum cpuhp_state {
	CPUHP_ONLINE,
};

/* Reuse another arch's entry to avoid kABI breakage */
#define CPUHP_AP_PERF_X86_IDXD_ONLINE CPUHP_AP_PERF_ARM_L2X0_ONLINE

int __cpuhp_setup_state(enum cpuhp_state state,	const char *name, bool invoke,
			int (*startup)(unsigned int cpu),
			int (*teardown)(unsigned int cpu), bool multi_instance);