From 9f465febcc2792b6d47bf8292b8214d34d04ac58 Mon Sep 17 00:00:00 2001 From: Jarek Poplawski Date: Sun, 7 Sep 2008 18:41:21 -0700 Subject: [PATCH] --- yaml --- r: 109675 b: refs/heads/master c: e8a83e10d7dfe5d0841062780769b30f65417e15 h: refs/heads/master i: 109673: e4d8e285d09518a6228be2078bfaba57b18c2253 109671: 47805e2af2b03655bfae76e6207d17e2794ad0b5 v: v3 --- [refs] | 2 +- trunk/net/core/dev.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index ba7ef8102277..5bdeda889291 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e3b802ba885b54f4050164c3cfd9e0ba9c73173a +refs/heads/master: e8a83e10d7dfe5d0841062780769b30f65417e15 diff --git a/trunk/net/core/dev.c b/trunk/net/core/dev.c index 60c51f765887..e719ed29310f 100644 --- a/trunk/net/core/dev.c +++ b/trunk/net/core/dev.c @@ -1991,8 +1991,13 @@ static void net_tx_action(struct softirq_action *h) spin_unlock(root_lock); } else { if (!test_bit(__QDISC_STATE_DEACTIVATED, - &q->state)) + &q->state)) { __netif_reschedule(q); + } else { + smp_mb__before_clear_bit(); + clear_bit(__QDISC_STATE_SCHED, + &q->state); + } } } }