aboutsummaryrefslogtreecommitdiffstats
path: root/net/sched/sch_api.c
diff options
context:
space:
mode:
authorThomas Zimmermann <[email protected]>2022-11-05 15:02:42 +0000
committerThomas Zimmermann <[email protected]>2022-11-05 15:08:36 +0000
commit8e4e4c2f53ffcb0ef746dc3b87ce1a57c5c94c7d (patch)
treea61fbc998223d50f8b8691b9b9ced38c21072b10 /net/sched/sch_api.c
parentdrm/ofdrm: Cast error pointers to void __iomem * (diff)
parentMerge tag 'drm-intel-gt-next-2022-11-03' of git://anongit.freedesktop.org/drm... (diff)
downloadkernel-8e4e4c2f53ffcb0ef746dc3b87ce1a57c5c94c7d.tar.gz
kernel-8e4e4c2f53ffcb0ef746dc3b87ce1a57c5c94c7d.zip
Merge drm/drm-next into drm-misc-next
Backmerging drm/drm-next to get the latest changes in the xlnx driver. Signed-off-by: Thomas Zimmermann <[email protected]>
Diffstat (limited to 'net/sched/sch_api.c')
-rw-r--r--net/sched/sch_api.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/net/sched/sch_api.c b/net/sched/sch_api.c
index c98af0ada706..4a27dfb1ba0f 100644
--- a/net/sched/sch_api.c
+++ b/net/sched/sch_api.c
@@ -1099,12 +1099,13 @@ static int qdisc_graft(struct net_device *dev, struct Qdisc *parent,
skip:
if (!ingress) {
- notify_and_destroy(net, skb, n, classid,
- rtnl_dereference(dev->qdisc), new);
+ old = rtnl_dereference(dev->qdisc);
if (new && !new->ops->attach)
qdisc_refcount_inc(new);
rcu_assign_pointer(dev->qdisc, new ? : &noop_qdisc);
+ notify_and_destroy(net, skb, n, classid, old, new);
+
if (new && new->ops->attach)
new->ops->attach(new);
} else {