diff --git a/include/linux/pkt_sched.h b/include/linux/pkt_sched.h index 919af93b70596e70a06bdd10363c1d57a1aa50f4..32761352e858cd4c95b15ab215b8c39be9fe756e 100644 --- a/include/linux/pkt_sched.h +++ b/include/linux/pkt_sched.h @@ -83,6 +83,8 @@ struct tc_ratespec __u32 rate; }; +#define TC_RTAB_SIZE 1024 + /* FIFO section */ struct tc_fifo_qopt diff --git a/net/sched/sch_api.c b/net/sched/sch_api.c index 8db554d54854405c2a280fe71f32babcea75fc3b..7e3c048ba9b1f1421d74435608924d77d36b50f4 100644 --- a/net/sched/sch_api.c +++ b/net/sched/sch_api.c @@ -244,7 +244,8 @@ struct qdisc_rate_table *qdisc_get_rtab(struct tc_ratespec *r, struct nlattr *ta } } - if (tab == NULL || r->rate == 0 || r->cell_log == 0 || nla_len(tab) != 1024) + if (tab == NULL || r->rate == 0 || r->cell_log == 0 || + nla_len(tab) != TC_RTAB_SIZE) return NULL; rtab = kmalloc(sizeof(*rtab), GFP_KERNEL);