net: qdisc: use rcu prefix and silence sparse warnings
[firefly-linux-kernel-4.4.55.git] / net / sched / sch_generic.c
index 19696ebe9ebc897379b6b9826e339f8ab10ddbc8..346ef85617d3ee1d72c59a3e11afc3fc1ad94706 100644 (file)
@@ -783,7 +783,7 @@ static void dev_deactivate_queue(struct net_device *dev,
        struct Qdisc *qdisc_default = _qdisc_default;
        struct Qdisc *qdisc;
 
-       qdisc = dev_queue->qdisc;
+       qdisc = rtnl_dereference(dev_queue->qdisc);
        if (qdisc) {
                spin_lock_bh(qdisc_lock(qdisc));
 
@@ -876,7 +876,7 @@ static void dev_init_scheduler_queue(struct net_device *dev,
 {
        struct Qdisc *qdisc = _qdisc;
 
-       dev_queue->qdisc = qdisc;
+       rcu_assign_pointer(dev_queue->qdisc, qdisc);
        dev_queue->qdisc_sleeping = qdisc;
 }