aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/arch/x86/kernel/cpu/resctrl/internal.h
diff options
context:
space:
mode:
authorTony Luck <tony.luck@intel.com>2024-06-28 14:56:15 -0700
committerBorislav Petkov (AMD) <bp@alien8.de>2024-07-02 19:57:19 +0200
commitc8c7d3d904b76c45fe2b5dc982fb5090d12a63af (patch)
tree5c794fa423853bf3649c8d27ba8af150f45d4eb6 /arch/x86/kernel/cpu/resctrl/internal.h
parentx86/resctrl: Handle removing directories in Sub-NUMA Cluster (SNC) mode (diff)
downloadwireguard-linux-c8c7d3d904b76c45fe2b5dc982fb5090d12a63af.tar.xz
wireguard-linux-c8c7d3d904b76c45fe2b5dc982fb5090d12a63af.zip
x86/resctrl: Fill out rmid_read structure for smp_call*() to read a counter
mon_event_read() fills out most fields of the struct rmid_read that is passed via an smp_call*() function to a CPU that is part of the correct domain to read the monitor counters. With Sub-NUMA Cluster (SNC) mode there are now two cases to handle: 1) Reading a file that returns a value for a single domain. + Choose the CPU to execute from the domain cpu_mask 2) Reading a file that must sum across domains sharing an L3 cache instance. + Indicate to called code that a sum is needed by passing a NULL rdt_mon_domain pointer. + Choose the CPU from the L3 shared_cpu_map. Signed-off-by: Tony Luck <tony.luck@intel.com> Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de> Reviewed-by: Reinette Chatre <reinette.chatre@intel.com> Tested-by: Babu Moger <babu.moger@amd.com> Link: https://lore.kernel.org/r/20240628215619.76401-16-tony.luck@intel.com
Diffstat (limited to '')
-rw-r--r--arch/x86/kernel/cpu/resctrl/internal.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kernel/cpu/resctrl/internal.h b/arch/x86/kernel/cpu/resctrl/internal.h
index 13d862221f9c..16982d1baf99 100644
--- a/arch/x86/kernel/cpu/resctrl/internal.h
+++ b/arch/x86/kernel/cpu/resctrl/internal.h
@@ -632,7 +632,7 @@ void mon_event_count(void *info);
int rdtgroup_mondata_show(struct seq_file *m, void *arg);
void mon_event_read(struct rmid_read *rr, struct rdt_resource *r,
struct rdt_mon_domain *d, struct rdtgroup *rdtgrp,
- int evtid, int first);
+ cpumask_t *cpumask, int evtid, int first);
void mbm_setup_overflow_handler(struct rdt_mon_domain *dom,
unsigned long delay_ms,
int exclude_cpu);