[PATCH] hwspinlock: fix warning from sparse

From: Antonio Borneo

Date: Mon Mar 23 2026 - 06:31:04 EST


Sparse triggers the following warnings:

drivers/hwspinlock/hwspinlock_core.c:392:9: warning: incorrect type in assignment (different address spaces)
drivers/hwspinlock/hwspinlock_core.c:392:9: expected void **slot
drivers/hwspinlock/hwspinlock_core.c:392:9: got void [noderef] __rcu **
drivers/hwspinlock/hwspinlock_core.c:392:9: warning: incorrect type in assignment (different address spaces)
drivers/hwspinlock/hwspinlock_core.c:392:9: expected void **slot
drivers/hwspinlock/hwspinlock_core.c:392:9: got void [noderef] __rcu **
drivers/hwspinlock/hwspinlock_core.c:393:48: warning: incorrect type in argument 1 (different address spaces)
drivers/hwspinlock/hwspinlock_core.c:393:48: expected void [noderef] __rcu **slot
drivers/hwspinlock/hwspinlock_core.c:393:48: got void **slot
drivers/hwspinlock/hwspinlock_core.c:397:30: warning: incorrect type in assignment (different address spaces)
drivers/hwspinlock/hwspinlock_core.c:397:30: expected void **slot
drivers/hwspinlock/hwspinlock_core.c:397:30: got void [noderef] __rcu **
drivers/hwspinlock/hwspinlock_core.c:392:9: warning: incorrect type in argument 1 (different address spaces)
drivers/hwspinlock/hwspinlock_core.c:392:9: expected void [noderef] __rcu **slot
drivers/hwspinlock/hwspinlock_core.c:392:9: got void **slot
drivers/hwspinlock/hwspinlock_core.c:392:9: warning: incorrect type in assignment (different address spaces)
drivers/hwspinlock/hwspinlock_core.c:392:9: expected void **slot
drivers/hwspinlock/hwspinlock_core.c:392:9: got void [noderef] __rcu **

all linked to the same missing '__rcu' at declaration of 'slot'.

Fix it!

Signed-off-by: Antonio Borneo <antonio.borneo@xxxxxxxxxxx>
---
drivers/hwspinlock/hwspinlock_core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/hwspinlock/hwspinlock_core.c b/drivers/hwspinlock/hwspinlock_core.c
index cc8e952a67727..50a875b2353f8 100644
--- a/drivers/hwspinlock/hwspinlock_core.c
+++ b/drivers/hwspinlock/hwspinlock_core.c
@@ -372,7 +372,7 @@ int of_hwspin_lock_get_id(struct device_node *np, int index)
struct of_phandle_args args;
struct hwspinlock *hwlock;
struct radix_tree_iter iter;
- void **slot;
+ void __rcu **slot;
int id;
int ret;


base-commit: c369299895a591d96745d6492d4888259b004a9e
--
2.34.1