sch_taprio.c (d64c6f96ba86bd8b97ed8d6762a8c8cc1770d214) | sch_taprio.c (698285da79f5b0b099db15a37ac661ac408c80eb) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2 3/* net/sched/sch_taprio.c Time Aware Priority Scheduler 4 * 5 * Authors: Vinicius Costa Gomes <vinicius.gomes@intel.com> 6 * 7 */ 8 --- 1591 unchanged lines hidden (view full) --- 1600static void taprio_reset(struct Qdisc *sch) 1601{ 1602 struct taprio_sched *q = qdisc_priv(sch); 1603 struct net_device *dev = qdisc_dev(sch); 1604 int i; 1605 1606 hrtimer_cancel(&q->advance_timer); 1607 if (q->qdiscs) { | 1// SPDX-License-Identifier: GPL-2.0 2 3/* net/sched/sch_taprio.c Time Aware Priority Scheduler 4 * 5 * Authors: Vinicius Costa Gomes <vinicius.gomes@intel.com> 6 * 7 */ 8 --- 1591 unchanged lines hidden (view full) --- 1600static void taprio_reset(struct Qdisc *sch) 1601{ 1602 struct taprio_sched *q = qdisc_priv(sch); 1603 struct net_device *dev = qdisc_dev(sch); 1604 int i; 1605 1606 hrtimer_cancel(&q->advance_timer); 1607 if (q->qdiscs) { |
1608 for (i = 0; i < dev->num_tx_queues && q->qdiscs[i]; i++) 1609 qdisc_reset(q->qdiscs[i]); | 1608 for (i = 0; i < dev->num_tx_queues; i++) 1609 if (q->qdiscs[i]) 1610 qdisc_reset(q->qdiscs[i]); |
1610 } 1611 sch->qstats.backlog = 0; 1612 sch->q.qlen = 0; 1613} 1614 1615static void taprio_destroy(struct Qdisc *sch) 1616{ 1617 struct taprio_sched *q = qdisc_priv(sch); 1618 struct net_device *dev = qdisc_dev(sch); 1619 unsigned int i; 1620 1621 spin_lock(&taprio_list_lock); 1622 list_del(&q->taprio_list); 1623 spin_unlock(&taprio_list_lock); 1624 1625 1626 taprio_disable_offload(dev, q, NULL); 1627 1628 if (q->qdiscs) { | 1611 } 1612 sch->qstats.backlog = 0; 1613 sch->q.qlen = 0; 1614} 1615 1616static void taprio_destroy(struct Qdisc *sch) 1617{ 1618 struct taprio_sched *q = qdisc_priv(sch); 1619 struct net_device *dev = qdisc_dev(sch); 1620 unsigned int i; 1621 1622 spin_lock(&taprio_list_lock); 1623 list_del(&q->taprio_list); 1624 spin_unlock(&taprio_list_lock); 1625 1626 1627 taprio_disable_offload(dev, q, NULL); 1628 1629 if (q->qdiscs) { |
1629 for (i = 0; i < dev->num_tx_queues && q->qdiscs[i]; i++) | 1630 for (i = 0; i < dev->num_tx_queues; i++) |
1630 qdisc_put(q->qdiscs[i]); 1631 1632 kfree(q->qdiscs); 1633 } 1634 q->qdiscs = NULL; 1635 1636 netdev_reset_tc(dev); 1637 --- 364 unchanged lines hidden --- | 1631 qdisc_put(q->qdiscs[i]); 1632 1633 kfree(q->qdiscs); 1634 } 1635 q->qdiscs = NULL; 1636 1637 netdev_reset_tc(dev); 1638 --- 364 unchanged lines hidden --- |