From cc55a1020fea5dfac0721999bab5684bf8c8391f Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Tue, 8 Jul 2008 22:59:10 -0700 Subject: [PATCH] --- yaml --- r: 103393 b: refs/heads/master c: 5aa709954a32a646c0cf14fdf7c8834db4ff1c03 h: refs/heads/master i: 103391: f8008ac26998d595892805d82817f5cfde823c96 v: v3 --- [refs] | 2 +- trunk/drivers/isdn/i4l/isdn_net.c | 2 +- trunk/include/net/sch_generic.h | 6 ++++++ 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 535aec493e01..e0ecd6b0e50d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ee609cb36220d18c0cf476b066a5ab7e6f6d3a69 +refs/heads/master: 5aa709954a32a646c0cf14fdf7c8834db4ff1c03 diff --git a/trunk/drivers/isdn/i4l/isdn_net.c b/trunk/drivers/isdn/i4l/isdn_net.c index 457bbd119f9b..bb904a0a98bd 100644 --- a/trunk/drivers/isdn/i4l/isdn_net.c +++ b/trunk/drivers/isdn/i4l/isdn_net.c @@ -287,7 +287,7 @@ isdn_net_unbind_channel(isdn_net_local * lp) BEWARE! This chunk of code cannot be called from hardware interrupt handler. I hope it is true. --ANK */ - qdisc_reset(lp->netdev->dev->tx_queue.qdisc); + qdisc_reset_all_tx(lp->netdev->dev); } lp->dialstate = 0; dev->rx_netdev[isdn_dc2minor(lp->isdn_device, lp->isdn_channel)] = NULL; diff --git a/trunk/include/net/sch_generic.h b/trunk/include/net/sch_generic.h index ea71705e9c77..ea33176616ff 100644 --- a/trunk/include/net/sch_generic.h +++ b/trunk/include/net/sch_generic.h @@ -227,6 +227,12 @@ extern struct Qdisc *qdisc_create_dflt(struct net_device *dev, extern void tcf_destroy(struct tcf_proto *tp); extern void tcf_destroy_chain(struct tcf_proto **fl); +/* Reset all TX qdiscs of a device. */ +static inline void qdisc_reset_all_tx(struct net_device *dev) +{ + qdisc_reset(dev->tx_queue.qdisc); +} + static inline int __qdisc_enqueue_tail(struct sk_buff *skb, struct Qdisc *sch, struct sk_buff_head *list) {