net: Fix skb_update_prio RCU usage.
authorIgor Maravic <igorm@etf.rs>
Fri, 25 Nov 2011 07:44:54 +0000 (07:44 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 29 Nov 2011 23:25:17 +0000 (18:25 -0500)
Change function rcu_dereference to rcu_dereference_bh to avoid warning

[ INFO: suspicious RCU usage. ]
-------------------------------
net/core/dev.c:2459 suspicious rcu_dereference_check() usage!

because we are locking with

rcu_read_lock_bh();

in function dev_queue_xmit(struct sk_buff *skb)

Signed-off-by: Igor Maravic <igorm@etf.rs>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/dev.c

index 91a59912207490818f4a09d1560a98247912f4bb..278463e91e3a8c2cfa24b8bc234914d85fbbd840 100644 (file)
@@ -2473,7 +2473,7 @@ static inline int __dev_xmit_skb(struct sk_buff *skb, struct Qdisc *q,
 #if IS_ENABLED(CONFIG_NETPRIO_CGROUP)
 static void skb_update_prio(struct sk_buff *skb)
 {
-       struct netprio_map *map = rcu_dereference(skb->dev->priomap);
+       struct netprio_map *map = rcu_dereference_bh(skb->dev->priomap);
 
        if ((!skb->priority) && (skb->sk) && map)
                skb->priority = map->priomap[skb->sk->sk_cgrp_prioidx];