From 2a6a77ce1a2a75849271c42e9145a76a5f9ad861 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Sun, 17 Aug 2008 23:37:16 -0700 Subject: [PATCH] --- yaml --- r: 108819 b: refs/heads/master c: 96d203169d1d851ac1468f7d4459a09581be364c h: refs/heads/master i: 108817: 9ba79643930f974b97b7500e7ce4a62f45b60bdb 108815: fee289beb48c8102c987d0c7d66d80b56a7c9cd6 v: v3 --- [refs] | 2 +- trunk/net/core/dev.c | 10 ++++------ 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index 99eceee7a5cb..0bbdddf56ce4 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 13601cd8e44aab332cedff1d6dc10786ec890b7b +refs/heads/master: 96d203169d1d851ac1468f7d4459a09581be364c diff --git a/trunk/net/core/dev.c b/trunk/net/core/dev.c index 819f0175bdc9..8d133802372b 100644 --- a/trunk/net/core/dev.c +++ b/trunk/net/core/dev.c @@ -1805,14 +1805,12 @@ int dev_queue_xmit(struct sk_buff *skb) spin_lock(root_lock); if (unlikely(test_bit(__QDISC_STATE_DEACTIVATED, &q->state))) { - spin_unlock(root_lock); + kfree_skb(skb); rc = NET_XMIT_DROP; - goto out_kfree_skb; + } else { + rc = qdisc_enqueue_root(skb, q); + qdisc_run(q); } - - rc = qdisc_enqueue_root(skb, q); - qdisc_run(q); - spin_unlock(root_lock); goto out;