enable floppy module generation for boot cd
[linux-2.6.git] / net / sched / sch_cbq.c
index 2d48488..01dfcb1 100644 (file)
@@ -241,7 +241,7 @@ cbq_reclassify(struct sk_buff *skb, struct cbq_class *this)
 static struct cbq_class *
 cbq_classify(struct sk_buff *skb, struct Qdisc *sch, int *qres)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data*)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *head = &q->link;
        struct cbq_class **defmap;
        struct cbq_class *cl = NULL;
@@ -344,7 +344,7 @@ fallback:
 
 static __inline__ void cbq_activate_class(struct cbq_class *cl)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data*)cl->qdisc->data;
+       struct cbq_sched_data *q = qdisc_priv(cl->qdisc);
        int prio = cl->cpriority;
        struct cbq_class *cl_tail;
 
@@ -368,7 +368,7 @@ static __inline__ void cbq_activate_class(struct cbq_class *cl)
 
 static void cbq_deactivate_class(struct cbq_class *this)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data*)this->qdisc->data;
+       struct cbq_sched_data *q = qdisc_priv(this->qdisc);
        int prio = this->cpriority;
        struct cbq_class *cl;
        struct cbq_class *cl_prev = q->active[prio];
@@ -419,7 +419,7 @@ cbq_mark_toplevel(struct cbq_sched_data *q, struct cbq_class *cl)
 static int
 cbq_enqueue(struct sk_buff *skb, struct Qdisc *sch)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        int len = skb->len;
        int ret = NET_XMIT_SUCCESS;
        struct cbq_class *cl = cbq_classify(skb, sch,&ret);
@@ -466,7 +466,7 @@ cbq_enqueue(struct sk_buff *skb, struct Qdisc *sch)
 static int
 cbq_requeue(struct sk_buff *skb, struct Qdisc *sch)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *cl;
        int ret;
 
@@ -500,7 +500,7 @@ cbq_requeue(struct sk_buff *skb, struct Qdisc *sch)
 
 static void cbq_ovl_classic(struct cbq_class *cl)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)cl->qdisc->data;
+       struct cbq_sched_data *q = qdisc_priv(cl->qdisc);
        psched_tdiff_t delay = PSCHED_TDIFF(cl->undertime, q->now);
 
        if (!cl->delayed) {
@@ -554,7 +554,7 @@ static void cbq_ovl_classic(struct cbq_class *cl)
 
 static void cbq_ovl_rclassic(struct cbq_class *cl)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)cl->qdisc->data;
+       struct cbq_sched_data *q = qdisc_priv(cl->qdisc);
        struct cbq_class *this = cl;
 
        do {
@@ -573,7 +573,7 @@ static void cbq_ovl_rclassic(struct cbq_class *cl)
 
 static void cbq_ovl_delay(struct cbq_class *cl)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)cl->qdisc->data;
+       struct cbq_sched_data *q = qdisc_priv(cl->qdisc);
        psched_tdiff_t delay = PSCHED_TDIFF(cl->undertime, q->now);
 
        if (!cl->delayed) {
@@ -609,7 +609,7 @@ static void cbq_ovl_delay(struct cbq_class *cl)
 
 static void cbq_ovl_lowprio(struct cbq_class *cl)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data*)cl->qdisc->data;
+       struct cbq_sched_data *q = qdisc_priv(cl->qdisc);
 
        cl->penalized = jiffies + cl->penalty;
 
@@ -678,7 +678,7 @@ static unsigned long cbq_undelay_prio(struct cbq_sched_data *q, int prio)
 static void cbq_undelay(unsigned long arg)
 {
        struct Qdisc *sch = (struct Qdisc*)arg;
-       struct cbq_sched_data *q = (struct cbq_sched_data*)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        long delay = 0;
        unsigned pmask;
 
@@ -715,7 +715,7 @@ static int cbq_reshape_fail(struct sk_buff *skb, struct Qdisc *child)
 {
        int len = skb->len;
        struct Qdisc *sch = child->__parent;
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *cl = q->rx_class;
 
        q->rx_class = NULL;
@@ -863,7 +863,7 @@ cbq_update(struct cbq_sched_data *q)
 static __inline__ struct cbq_class *
 cbq_under_limit(struct cbq_class *cl)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data*)cl->qdisc->data;
+       struct cbq_sched_data *q = qdisc_priv(cl->qdisc);
        struct cbq_class *this_cl = cl;
 
        if (cl->tparent == NULL)
@@ -903,7 +903,7 @@ cbq_under_limit(struct cbq_class *cl)
 static __inline__ struct sk_buff *
 cbq_dequeue_prio(struct Qdisc *sch, int prio)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *cl_tail, *cl_prev, *cl;
        struct sk_buff *skb;
        int deficit;
@@ -1006,7 +1006,7 @@ next_class:
 static __inline__ struct sk_buff *
 cbq_dequeue_1(struct Qdisc *sch)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct sk_buff *skb;
        unsigned activemask;
 
@@ -1025,7 +1025,7 @@ static struct sk_buff *
 cbq_dequeue(struct Qdisc *sch)
 {
        struct sk_buff *skb;
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        psched_time_t now;
        psched_tdiff_t incr;
 
@@ -1150,7 +1150,7 @@ static void cbq_normalize_quanta(struct cbq_sched_data *q, int prio)
 
 static void cbq_sync_defmap(struct cbq_class *cl)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data*)cl->qdisc->data;
+       struct cbq_sched_data *q = qdisc_priv(cl->qdisc);
        struct cbq_class *split = cl->split;
        unsigned h;
        int i;
@@ -1216,7 +1216,7 @@ static void cbq_change_defmap(struct cbq_class *cl, u32 splitid, u32 def, u32 ma
 static void cbq_unlink_class(struct cbq_class *this)
 {
        struct cbq_class *cl, **clp;
-       struct cbq_sched_data *q = (struct cbq_sched_data*)this->qdisc->data;
+       struct cbq_sched_data *q = qdisc_priv(this->qdisc);
 
        for (clp = &q->classes[cbq_hash(this->classid)]; (cl = *clp) != NULL; clp = &cl->next) {
                if (cl == this) {
@@ -1249,7 +1249,7 @@ static void cbq_unlink_class(struct cbq_class *this)
 
 static void cbq_link_class(struct cbq_class *this)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data*)this->qdisc->data;
+       struct cbq_sched_data *q = qdisc_priv(this->qdisc);
        unsigned h = cbq_hash(this->classid);
        struct cbq_class *parent = this->tparent;
 
@@ -1270,7 +1270,7 @@ static void cbq_link_class(struct cbq_class *this)
 
 static unsigned int cbq_drop(struct Qdisc* sch)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *cl, *cl_head;
        int prio;
        unsigned int len;
@@ -1293,7 +1293,7 @@ static unsigned int cbq_drop(struct Qdisc* sch)
 static void
 cbq_reset(struct Qdisc* sch)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *cl;
        int prio;
        unsigned h;
@@ -1363,7 +1363,7 @@ static void cbq_addprio(struct cbq_sched_data *q, struct cbq_class *cl)
 
 static int cbq_set_wrr(struct cbq_class *cl, struct tc_cbq_wrropt *wrr)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)cl->qdisc->data;
+       struct cbq_sched_data *q = qdisc_priv(cl->qdisc);
 
        if (wrr->allot)
                cl->allot = wrr->allot;
@@ -1432,7 +1432,7 @@ static int cbq_set_fopt(struct cbq_class *cl, struct tc_cbq_fopt *fopt)
 
 static int cbq_init(struct Qdisc *sch, struct rtattr *opt)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data*)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct rtattr *tb[TCA_CBQ_MAX];
        struct tc_ratespec *r;
 
@@ -1623,7 +1623,7 @@ rtattr_failure:
 
 static int cbq_dump(struct Qdisc *sch, struct sk_buff *skb)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data*)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        unsigned char    *b = skb->tail;
        struct rtattr *rta;
 
@@ -1650,7 +1650,7 @@ static int
 cbq_dump_class(struct Qdisc *sch, unsigned long arg,
               struct sk_buff *skb, struct tcmsg *tcm)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data*)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *cl = (struct cbq_class*)arg;
        unsigned char    *b = skb->tail;
        struct rtattr *rta;
@@ -1726,7 +1726,7 @@ cbq_leaf(struct Qdisc *sch, unsigned long arg)
 
 static unsigned long cbq_get(struct Qdisc *sch, u32 classid)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *cl = cbq_class_lookup(q, classid);
 
        if (cl) {
@@ -1760,7 +1760,7 @@ static void cbq_destroy_class(struct cbq_class *cl)
 static void
 cbq_destroy(struct Qdisc* sch)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *cl;
        unsigned h;
 
@@ -1791,7 +1791,7 @@ static void cbq_put(struct Qdisc *sch, unsigned long arg)
 
        if (--cl->refcnt == 0) {
 #ifdef CONFIG_NET_CLS_POLICE
-               struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+               struct cbq_sched_data *q = qdisc_priv(sch);
 
                spin_lock_bh(&sch->dev->queue_lock);
                if (q->rx_class == cl)
@@ -1808,7 +1808,7 @@ cbq_change_class(struct Qdisc *sch, u32 classid, u32 parentid, struct rtattr **t
                 unsigned long *arg)
 {
        int err;
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *cl = (struct cbq_class*)*arg;
        struct rtattr *opt = tca[TCA_OPTIONS-1];
        struct rtattr *tb[TCA_CBQ_MAX];
@@ -2004,7 +2004,7 @@ failure:
 
 static int cbq_delete(struct Qdisc *sch, unsigned long arg)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *cl = (struct cbq_class*)arg;
 
        if (cl->filters || cl->children || cl == &q->link)
@@ -2042,7 +2042,7 @@ static int cbq_delete(struct Qdisc *sch, unsigned long arg)
 
 static struct tcf_proto **cbq_find_tcf(struct Qdisc *sch, unsigned long arg)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *cl = (struct cbq_class *)arg;
 
        if (cl == NULL)
@@ -2054,7 +2054,7 @@ static struct tcf_proto **cbq_find_tcf(struct Qdisc *sch, unsigned long arg)
 static unsigned long cbq_bind_filter(struct Qdisc *sch, unsigned long parent,
                                     u32 classid)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        struct cbq_class *p = (struct cbq_class*)parent;
        struct cbq_class *cl = cbq_class_lookup(q, classid);
 
@@ -2076,7 +2076,7 @@ static void cbq_unbind_filter(struct Qdisc *sch, unsigned long arg)
 
 static void cbq_walk(struct Qdisc *sch, struct qdisc_walker *arg)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+       struct cbq_sched_data *q = qdisc_priv(sch);
        unsigned h;
 
        if (arg->stop)