[PATCH v3 19/29] arm_mpam: Use a static key to indicate when mpam is enabled
Ben Horgan
ben.horgan at arm.com
Mon Oct 20 09:28:14 PDT 2025
Hi James,
On 10/17/25 19:56, James Morse wrote:
> Once all the MSC have been probed, the system wide usable number of
> PARTID is known and the configuration arrays can be allocated.
>
> After this point, checking all the MSC have been probed is pointless,
> and the cpuhp callbacks should restore the configuration, instead of
> just resetting the MSC.
>
> Add a static key to enable this behaviour. This will also allow MPAM
> to be disabled in response to an error, and the architecture code to
> enable/disable the context switch of the MPAM system registers.
>
> Signed-off-by: James Morse <james.morse at arm.com>
> Reviewed-by: Jonathan Cameron <jonathan.cameron at huawei.com>
> Reviewed-by: Ben Horgan <ben.horgan at arm.com>
> Reviewed-by: Fenghua Yu <fenghuay at nvidia.com>
> Tested-by: Fenghua Yu <fenghuay at nvidia.com>
> ---
> Changes since v2:
> * Removed the word 'TODO'.
> * Fixed a typo in the commit message.
> ---
[..]
> diff --git a/drivers/resctrl/mpam_internal.h b/drivers/resctrl/mpam_internal.h
> index a04b09abd814..d492df9a1735 100644
> --- a/drivers/resctrl/mpam_internal.h
> +++ b/drivers/resctrl/mpam_internal.h
> @@ -9,6 +9,7 @@
> #include <linux/bitmap.h>
> #include <linux/cpumask.h>
> #include <linux/io.h>
> +#include <linux/jump_label.h>
> #include <linux/llist.h>
> #include <linux/mailbox_client.h>
> #include <linux/mutex.h>
> @@ -19,8 +20,16 @@
>
> #define MPAM_MSC_MAX_NUM_RIS 16
>
> +
nit: stray whitespace change
> struct platform_device;
>
> +DECLARE_STATIC_KEY_FALSE(mpam_enabled);
> +
> +static inline bool mpam_is_enabled(void)
> +{
> + return static_branch_likely(&mpam_enabled);
> +}
> +
> /*
> * Structures protected by SRCU may not be freed for a surprising amount of
> * time (especially if perf is running). To ensure the MPAM error interrupt can
--
Thanks,
Ben
More information about the linux-arm-kernel
mailing list