]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
fix up net_sched patch for 4.14 and 4.19
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 20 Sep 2019 12:16:00 +0000 (14:16 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 20 Sep 2019 12:16:00 +0000 (14:16 +0200)
queue-4.14/net_sched-let-qdisc_put-accept-null-pointer.patch
queue-4.19/net_sched-let-qdisc_put-accept-null-pointer.patch

index 057e035122ffc331355fdac8e187fd316a39d3bf..4ea62d9452437ccb85ea14b1d8c1f76a9109fde8 100644 (file)
@@ -27,18 +27,21 @@ Acked-by: Jiri Pirko <jiri@mellanox.com>
 Signed-off-by: David S. Miller <davem@davemloft.net>
 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- net/sched/sch_generic.c |    3 +++
- 1 file changed, 3 insertions(+)
+ net/sched/sch_generic.c |    6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
 
 --- a/net/sched/sch_generic.c
 +++ b/net/sched/sch_generic.c
-@@ -705,6 +705,9 @@ void qdisc_destroy(struct Qdisc *qdisc)
- {
-       const struct Qdisc_ops  *ops = qdisc->ops;
+@@ -703,7 +703,11 @@ static void qdisc_rcu_free(struct rcu_he
  
+ void qdisc_destroy(struct Qdisc *qdisc)
+ {
+-      const struct Qdisc_ops  *ops = qdisc->ops;
++      const struct Qdisc_ops *ops;
++
 +      if (!qdisc)
 +              return;
-+
++      ops = qdisc->ops;
        if (qdisc->flags & TCQ_F_BUILTIN ||
            !refcount_dec_and_test(&qdisc->refcnt))
-               return;
index 47c1a81979a09d118b8c3c28ca17752ef7899816..1b1bfaf905dff18975176b7cc60282e1e7afbc13 100644 (file)
@@ -27,17 +27,22 @@ Acked-by: Jiri Pirko <jiri@mellanox.com>
 Signed-off-by: David S. Miller <davem@davemloft.net>
 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- net/sched/sch_generic.c |    3 +++
- 1 file changed, 3 insertions(+)
+ net/sched/sch_generic.c |    6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
 
 --- a/net/sched/sch_generic.c
 +++ b/net/sched/sch_generic.c
-@@ -950,6 +950,9 @@ void qdisc_destroy(struct Qdisc *qdisc)
-       const struct Qdisc_ops  *ops = qdisc->ops;
+@@ -947,9 +947,13 @@ void qdisc_free(struct Qdisc *qdisc)
+ void qdisc_destroy(struct Qdisc *qdisc)
+ {
+-      const struct Qdisc_ops  *ops = qdisc->ops;
++      const struct Qdisc_ops *ops;
        struct sk_buff *skb, *tmp;
  
 +      if (!qdisc)
 +              return;
++      ops = qdisc->ops;
 +
        if (qdisc->flags & TCQ_F_BUILTIN ||
            !refcount_dec_and_test(&qdisc->refcnt))