diff mbox series

[v2] xfrm: Fix incorrect types in assignment

Message ID 1613791103-127057-1-git-send-email-yang.lee@linux.alibaba.com
State New
Headers show
Series [v2] xfrm: Fix incorrect types in assignment | expand

Commit Message

Yang Li Feb. 20, 2021, 3:18 a.m. UTC
Fix the following sparse warnings:
net/xfrm/xfrm_policy.c:1303:22: warning: incorrect type in assignment
(different address spaces)

Reported-by: Abaci Robot <abaci@linux.alibaba.com>
Signed-off-by: Yang Li <yang.lee@linux.alibaba.com>
---
 net/xfrm/xfrm_policy.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Steffen Klassert March 1, 2021, 11:32 a.m. UTC | #1
On Sat, Feb 20, 2021 at 11:18:23AM +0800, Yang Li wrote:
> Fix the following sparse warnings:

> net/xfrm/xfrm_policy.c:1303:22: warning: incorrect type in assignment

> (different address spaces)

> 

> Reported-by: Abaci Robot <abaci@linux.alibaba.com>

> Signed-off-by: Yang Li <yang.lee@linux.alibaba.com>


Please add a proper 'Fixes' tag so that it can be backported into
the stable trees.

Thanks!
diff mbox series

Patch

diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c
index b74f28c..aac5e88 100644
--- a/net/xfrm/xfrm_policy.c
+++ b/net/xfrm/xfrm_policy.c
@@ -1300,7 +1300,8 @@  static void xfrm_hash_rebuild(struct work_struct *work)
 		}
 
 		hmask = net->xfrm.policy_bydst[dir].hmask;
-		odst = net->xfrm.policy_bydst[dir].table;
+		odst = rcu_dereference_protected(net->xfrm.policy_bydst[dir].table,
+						 lockdep_is_held(&net->xfrm.xfrm_policy_lock));
 		for (i = hmask; i >= 0; i--) {
 			hlist_for_each_entry_safe(policy, n, odst + i, bydst)
 				hlist_del_rcu(&policy->bydst);