[PATCH RFC 10/15] arm_mpam: Fix update_msc_accessibility() return type to void
From: Yin Li
Date: Tue Aug 11 2026 - 09:49:08 EST
The function update_msc_accessibility() was changed to return int in
the DT support patch to propagate errors from the DT accessibility
derivation path. However, the function silently ignores errors from
get_cpumask_from_cache() and does not propagate them to the caller.
Revert the return type to void and remove the unused error variable,
keeping the dev_err_once() diagnostic for unrecognised parent nodes.
The caller checks cpumask_empty() after the call to detect failure.
Signed-off-by: Yin Li <yin.li@xxxxxxxxxxxxxxxx>
---
drivers/resctrl/mpam_devices.c | 19 ++++++-------------
1 file changed, 6 insertions(+), 13 deletions(-)
diff --git a/drivers/resctrl/mpam_devices.c b/drivers/resctrl/mpam_devices.c
index 5d1854d97371..b0e67c8349c7 100644
--- a/drivers/resctrl/mpam_devices.c
+++ b/drivers/resctrl/mpam_devices.c
@@ -2158,7 +2158,7 @@ static int mpam_msc_setup_error_irq(struct mpam_msc *msc)
* corresponding cache may also be powered off. By making accesses from
* one of those CPUs, we ensure we don't access a cache that's powered off.
*/
-static int update_msc_accessibility(struct mpam_msc *msc)
+static void update_msc_accessibility(struct mpam_msc *msc)
{
struct device *dev = &msc->pdev->dev;
struct device_node *parent;
@@ -2174,29 +2174,22 @@ static int update_msc_accessibility(struct mpam_msc *msc)
acpi_pptt_get_cpus_from_container(affinity_id,
&msc->accessibility);
- return 0;
+ return;
}
/* Where an MSC can be accessed from depends on the path to of_node. */
parent = of_get_parent(msc->pdev->dev.of_node);
if (parent == of_root) {
cpumask_copy(&msc->accessibility, cpu_possible_mask);
- err = 0;
} else {
- if (of_device_is_compatible(parent, "cache")) {
- err = get_cpumask_from_cache(parent,
- &msc->accessibility);
- } else if (of_device_is_compatible(parent, "memory")) {
+ if (of_device_is_compatible(parent, "cache"))
+ get_cpumask_from_cache(parent, &msc->accessibility);
+ else if (of_device_is_compatible(parent, "memory"))
cpumask_copy(&msc->accessibility, cpu_possible_mask);
- err = 0;
- } else {
- err = -EINVAL;
+ else
dev_err_once(dev, "Cannot determine accessibility of MSC.\n");
- }
}
of_node_put(parent);
-
- return err;
}
/*
--
2.34.1