VServer 1.9.2 (patch-2.6.8.1-vs1.9.2.diff)
[linux-2.6.git] / net / sched / sch_fifo.c
index 132a5bc..b089924 100644 (file)
@@ -45,7 +45,7 @@ struct fifo_sched_data
 static int
 bfifo_enqueue(struct sk_buff *skb, struct Qdisc* sch)
 {
-       struct fifo_sched_data *q = (struct fifo_sched_data *)sch->data;
+       struct fifo_sched_data *q = qdisc_priv(sch);
 
        if (sch->stats.backlog + skb->len <= q->limit) {
                __skb_queue_tail(&sch->q, skb);
@@ -106,7 +106,7 @@ fifo_reset(struct Qdisc* sch)
 static int
 pfifo_enqueue(struct sk_buff *skb, struct Qdisc* sch)
 {
-       struct fifo_sched_data *q = (struct fifo_sched_data *)sch->data;
+       struct fifo_sched_data *q = qdisc_priv(sch);
 
        if (sch->q.qlen < q->limit) {
                __skb_queue_tail(&sch->q, skb);
@@ -138,7 +138,7 @@ pfifo_dequeue(struct Qdisc* sch)
 
 static int fifo_init(struct Qdisc *sch, struct rtattr *opt)
 {
-       struct fifo_sched_data *q = (void*)sch->data;
+       struct fifo_sched_data *q = qdisc_priv(sch);
 
        if (opt == NULL) {
                unsigned int limit = sch->dev->tx_queue_len ? : 1;
@@ -158,7 +158,7 @@ static int fifo_init(struct Qdisc *sch, struct rtattr *opt)
 
 static int fifo_dump(struct Qdisc *sch, struct sk_buff *skb)
 {
-       struct fifo_sched_data *q = (void*)sch->data;
+       struct fifo_sched_data *q = qdisc_priv(sch);
        unsigned char    *b = skb->tail;
        struct tc_fifo_qopt opt;