aboutsummaryrefslogtreecommitdiffstats
path: root/net/sched/sch_htb.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2006-10-12 07:38:59 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-10-12 07:38:59 -0700
commit9ff4680e9958508bebc5c683b98f37b66617e088 (patch)
tree4d3e1ae5ba9c7fcba0a76ea2e577da0c84e75f71 /net/sched/sch_htb.c
parent83d3d3c52468394419474d053df9dfe60d8f21c2 (diff)
parent30bdbe397bf58131a91fd836f60972442bed0544 (diff)
downloadkernel_samsung_espresso10-9ff4680e9958508bebc5c683b98f37b66617e088.zip
kernel_samsung_espresso10-9ff4680e9958508bebc5c683b98f37b66617e088.tar.gz
kernel_samsung_espresso10-9ff4680e9958508bebc5c683b98f37b66617e088.tar.bz2
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: [PKT_SCHED] sch_htb: use rb_first() cleanup [RTNETLINK]: Fix use of wrong skb in do_getlink() [DECNET]: Fix sfuzz hanging on 2.6.18 [NET]: Do not memcmp() over pad bytes of struct flowi. [NET]: Introduce protocol-specific destructor for time-wait sockets. [NET]: Use typesafe inet_twsk() inline function instead of cast. [NET]: Use hton{l,s}() for non-initializers. [TCP]: Use TCPOLEN_TSTAMP_ALIGNED macro instead of magic number. [IPV6]: Seperate sit driver to extra module (addrconf.c changes) [IPV6]: Seperate sit driver to extra module [NET]: File descriptor loss while receiving SCM_RIGHTS [SCTP]: Fix the RX queue size shown in /proc/net/sctp/assocs output. [SCTP]: Fix receive buffer accounting. SELinux: Bug fix in polidydb_destroy IPsec: fix handling of errors for socket policies IPsec: correct semantics for SELinux policy matching IPsec: propagate security module errors up from flow_cache_lookup NetLabel: use SECINITSID_UNLABELED for a base SID NetLabel: fix a cache race condition
Diffstat (limited to 'net/sched/sch_htb.c')
-rw-r--r--net/sched/sch_htb.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/net/sched/sch_htb.c b/net/sched/sch_htb.c
index bb3ddd4..9b9c555 100644
--- a/net/sched/sch_htb.c
+++ b/net/sched/sch_htb.c
@@ -786,11 +786,10 @@ static long htb_do_events(struct htb_sched *q, int level)
for (i = 0; i < 500; i++) {
struct htb_class *cl;
long diff;
- struct rb_node *p = q->wait_pq[level].rb_node;
+ struct rb_node *p = rb_first(&q->wait_pq[level]);
+
if (!p)
return 0;
- while (p->rb_left)
- p = p->rb_left;
cl = rb_entry(p, struct htb_class, pq_node);
if (time_after(cl->pq_key, q->jiffies)) {