From: Jiri Pirko <j...@mellanox.com>

Even if it is only for classid now, use this common struct a be aligned
with the rest of the classful qdiscs.

Signed-off-by: Jiri Pirko <j...@mellanox.com>
---
 net/sched/sch_atm.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/net/sched/sch_atm.c b/net/sched/sch_atm.c
index 572fe25..0af4b1c 100644
--- a/net/sched/sch_atm.c
+++ b/net/sched/sch_atm.c
@@ -41,6 +41,7 @@
 #define VCC2FLOW(vcc) ((struct atm_flow_data *) ((vcc)->user_back))
 
 struct atm_flow_data {
+       struct Qdisc_class_common common;
        struct Qdisc            *q;     /* FIFO, TBF, etc. */
        struct tcf_proto __rcu  *filter_list;
        struct tcf_block        *block;
@@ -49,7 +50,6 @@ struct atm_flow_data {
                                           struct sk_buff *skb); /* chaining */
        struct atm_qdisc_data   *parent;        /* parent qdisc */
        struct socket           *sock;          /* for closing */
-       u32                     classid;        /* x:y type ID */
        int                     ref;            /* reference count */
        struct gnet_stats_basic_packed  bstats;
        struct gnet_stats_queue qstats;
@@ -75,7 +75,7 @@ static inline struct atm_flow_data *lookup_flow(struct Qdisc 
*sch, u32 classid)
        struct atm_flow_data *flow;
 
        list_for_each_entry(flow, &p->flows, list) {
-               if (flow->classid == classid)
+               if (flow->common.classid == classid)
                        return flow;
        }
        return NULL;
@@ -293,7 +293,7 @@ static int atm_tc_change(struct Qdisc *sch, u32 classid, 
u32 parent,
        flow->old_pop = flow->vcc->pop;
        flow->parent = p;
        flow->vcc->pop = sch_atm_pop;
-       flow->classid = classid;
+       flow->common.classid = classid;
        flow->ref = 1;
        flow->excess = excess;
        list_add(&flow->list, &p->link.list);
@@ -549,7 +549,7 @@ static int atm_tc_init(struct Qdisc *sch, struct nlattr 
*opt)
 
        p->link.vcc = NULL;
        p->link.sock = NULL;
-       p->link.classid = sch->handle;
+       p->link.common.classid = sch->handle;
        p->link.ref = 1;
        tasklet_init(&p->task, sch_atm_dequeue, (unsigned long)sch);
        return 0;
@@ -594,7 +594,7 @@ static int atm_tc_dump_class(struct Qdisc *sch, unsigned 
long cl,
                sch, p, flow, skb, tcm);
        if (list_empty(&flow->list))
                return -EINVAL;
-       tcm->tcm_handle = flow->classid;
+       tcm->tcm_handle = flow->common.classid;
        tcm->tcm_info = flow->q->handle;
 
        nest = nla_nest_start(skb, TCA_OPTIONS);
@@ -619,7 +619,7 @@ static int atm_tc_dump_class(struct Qdisc *sch, unsigned 
long cl,
                        goto nla_put_failure;
        }
        if (flow->excess) {
-               if (nla_put_u32(skb, TCA_ATM_EXCESS, flow->classid))
+               if (nla_put_u32(skb, TCA_ATM_EXCESS, flow->common.classid))
                        goto nla_put_failure;
        } else {
                if (nla_put_u32(skb, TCA_ATM_EXCESS, 0))
-- 
2.9.3

Reply via email to