diff options
Diffstat (limited to 'include/net/sch_generic.h')
-rw-r--r-- | include/net/sch_generic.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/include/net/sch_generic.h b/include/net/sch_generic.h index ba749be1e354..433604bb3fe8 100644 --- a/include/net/sch_generic.h +++ b/include/net/sch_generic.h | |||
@@ -313,13 +313,12 @@ extern void qdisc_calculate_pkt_len(struct sk_buff *skb, | |||
313 | extern void tcf_destroy(struct tcf_proto *tp); | 313 | extern void tcf_destroy(struct tcf_proto *tp); |
314 | extern void tcf_destroy_chain(struct tcf_proto **fl); | 314 | extern void tcf_destroy_chain(struct tcf_proto **fl); |
315 | 315 | ||
316 | /* Reset all TX qdiscs of a device. */ | 316 | /* Reset all TX qdiscs greater then index of a device. */ |
317 | static inline void qdisc_reset_all_tx(struct net_device *dev) | 317 | static inline void qdisc_reset_all_tx_gt(struct net_device *dev, unsigned int i) |
318 | { | 318 | { |
319 | unsigned int i; | ||
320 | struct Qdisc *qdisc; | 319 | struct Qdisc *qdisc; |
321 | 320 | ||
322 | for (i = 0; i < dev->num_tx_queues; i++) { | 321 | for (; i < dev->num_tx_queues; i++) { |
323 | qdisc = netdev_get_tx_queue(dev, i)->qdisc; | 322 | qdisc = netdev_get_tx_queue(dev, i)->qdisc; |
324 | if (qdisc) { | 323 | if (qdisc) { |
325 | spin_lock_bh(qdisc_lock(qdisc)); | 324 | spin_lock_bh(qdisc_lock(qdisc)); |
@@ -329,6 +328,11 @@ static inline void qdisc_reset_all_tx(struct net_device *dev) | |||
329 | } | 328 | } |
330 | } | 329 | } |
331 | 330 | ||
331 | static inline void qdisc_reset_all_tx(struct net_device *dev) | ||
332 | { | ||
333 | qdisc_reset_all_tx_gt(dev, 0); | ||
334 | } | ||
335 | |||
332 | /* Are all TX queues of the device empty? */ | 336 | /* Are all TX queues of the device empty? */ |
333 | static inline bool qdisc_all_tx_empty(const struct net_device *dev) | 337 | static inline bool qdisc_all_tx_empty(const struct net_device *dev) |
334 | { | 338 | { |