Messages in this thread Patch in this message | | | Date | Sun, 6 Apr 2014 22:56:27 -0700 | Subject | Re: 3.14 tc oops | From | Cong Wang <> |
| |
On Thu, Apr 3, 2014 at 9:24 AM, Cong Wang <xiyou.wangcong@gmail.com> wrote: > On Wed, Apr 2, 2014 at 7:24 AM, Kelly Anderson <kelly@xilka.com> wrote: >> Hi, >> >> I hit a kernel oops when starting traffic control on my armv7 router, I don't >> think the architecture is related, the same tc code worked perfectly with >> earlier kernel versions, i.e. 3.13.x. >> >> I also attached an object dump with line numbers to make identifying the >> problem a bit easier. >> >> Please cc me to keep me in the loop, I can test patches. > > > Thanks for the report! Looks like it is caused by one of my patches, > I will look into this shortly. >
Which tc filter are you using on that htb qdisc? (tc filter show dev ....)
I suspect it's tcindex filter, if so please try the following patch:
diff --git a/net/sched/cls_tcindex.c b/net/sched/cls_tcindex.c index eed8404..14618cc 100644 --- a/net/sched/cls_tcindex.c +++ b/net/sched/cls_tcindex.c @@ -298,8 +298,10 @@ tcindex_set_parms(struct net *net, struct tcf_proto *tp, unsigned long base, tcf_exts_change(tp, &cr.exts, &e);
tcf_tree_lock(tp); - if (old_r && old_r != r) + if (old_r && old_r != r) { memset(old_r, 0, sizeof(*old_r)); + tcf_exts_init(&old_r->exts, TCA_TCINDEX_ACT, TCA_TCINDEX_POLICE); + }
memcpy(p, &cp, sizeof(cp)); memcpy(r, &cr, sizeof(cr));
| |