]> git.pld-linux.org Git - packages/kernel.git/commitdiff
- updated for 2.6.29
authorJan Rękorajski <baggins@pld-linux.org>
Mon, 6 Apr 2009 21:08:41 +0000 (21:08 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    kernel-esfq.patch -> 1.3

kernel-esfq.patch

index 4f5457daa3fd720b977a01a0e37804f5e423daa6..374dcbdbb859686ed5f588b1cd09bc6585161a5e 100644 (file)
@@ -465,20 +465,17 @@ diff -Naur linux-2.6.24.orig/net/sched/sch_esfq.c linux-2.6.24/net/sched/sch_esf
 +      return NET_XMIT_CN;
 +}
 +
-+
-+static int esfq_requeue(struct sk_buff *skb, struct Qdisc* sch)
++static struct sk_buff *esfq_peek(struct Qdisc* sch)
 +{
 +      struct esfq_sched_data *q = qdisc_priv(sch);
-+      esfq_q_enqueue(skb, q, ESFQ_HEAD);
-+      sch->qstats.backlog += skb->len;
-+      if (++sch->q.qlen < q->limit - 1) {
-+              sch->qstats.requeues++;
-+              return 0;
-+      }
++      esfq_index a;
 +
-+      sch->qstats.drops++;
-+      esfq_drop(sch);
-+      return NET_XMIT_CN;
++      /* No active slots */
++      if (q->tail == q->depth)
++              return NULL;
++
++      a = q->next[q->tail];
++      return skb_peek(&q->qs[a]);
 +}
 +
 +static struct sk_buff *esfq_q_dequeue(struct esfq_sched_data *q)
@@ -773,7 +770,7 @@ diff -Naur linux-2.6.24.orig/net/sched/sch_esfq.c linux-2.6.24/net/sched/sch_esf
 +      .priv_size      =       sizeof(struct esfq_sched_data),
 +      .enqueue        =       esfq_enqueue,
 +      .dequeue        =       esfq_dequeue,
-+      .requeue        =       esfq_requeue,
++      .peek           =       esfq_peek,
 +      .drop           =       esfq_drop,
 +      .init           =       esfq_init,
 +      .reset          =       esfq_reset,
This page took 3.201076 seconds and 4 git commands to generate.