]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
x86/resctrl: Add end-marker to the resctrl_event_id enum
authorJames Morse <james.morse@arm.com>
Thu, 15 May 2025 16:58:41 +0000 (16:58 +0000)
committerBorislav Petkov (AMD) <bp@alien8.de>
Fri, 16 May 2025 08:44:36 +0000 (10:44 +0200)
The resctrl_event_id enum gives names to the counter event numbers on x86.
These are used directly by resctrl.

To allow the MPAM driver to keep an array of these the size of the enum
needs to be known.

Add a 'num_events' enum entry which can be used to size an array.  This is
added to the enum to reduce conflicts with another series, which in turn
requires get_arch_mbm_state() to have a default case.

Signed-off-by: James Morse <james.morse@arm.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Reviewed-by: Reinette Chatre <reinette.chatre@intel.com>
Reviewed-by: Fenghua Yu <fenghuay@nvidia.com>
Tested-by: Fenghua Yu <fenghuay@nvidia.com>
Tested-by: Babu Moger <babu.moger@amd.com>
Tested-by: Shaopeng Tan <tan.shaopeng@jp.fujitsu.com>
Tested-by: Tony Luck <tony.luck@intel.com>
Link: https://lore.kernel.org/20250515165855.31452-12-james.morse@arm.com
arch/x86/kernel/cpu/resctrl/monitor.c
include/linux/resctrl_types.h

index 73e3fe4f4c870d6d4c93a519805ce6f7887ae646..4962ae4bc596476ba468857ff2493520c6317100 100644 (file)
@@ -260,12 +260,11 @@ static struct arch_mbm_state *get_arch_mbm_state(struct rdt_hw_mon_domain *hw_do
                return &hw_dom->arch_mbm_total[rmid];
        case QOS_L3_MBM_LOCAL_EVENT_ID:
                return &hw_dom->arch_mbm_local[rmid];
+       default:
+               /* Never expect to get here */
+               WARN_ON_ONCE(1);
+               return NULL;
        }
-
-       /* Never expect to get here */
-       WARN_ON_ONCE(1);
-
-       return NULL;
 }
 
 void resctrl_arch_reset_rmid(struct rdt_resource *r, struct rdt_mon_domain *d,
index f26450b3326b18e4caeedfd308b18eaafe8a8c30..69bf740130ac6c15285518666e9bb6a514a53828 100644 (file)
@@ -49,6 +49,9 @@ enum resctrl_event_id {
        QOS_L3_OCCUP_EVENT_ID           = 0x01,
        QOS_L3_MBM_TOTAL_EVENT_ID       = 0x02,
        QOS_L3_MBM_LOCAL_EVENT_ID       = 0x03,
+
+       /* Must be the last */
+       QOS_NUM_EVENTS,
 };
 
 #endif /* __LINUX_RESCTRL_TYPES_H */