[Devel] Re: [BUG] net_cls: Panic occured when net_cls subsystem use

jamal hadi at cyberus.ca
Sat May 30 04:56:34 PDT 2009


On Sat, 2009-05-30 at 13:45 +0200, Jarek Poplawski wrote:

> > > >       }
> > > >
> > > >       err = tp->ops->change(tp, cl, t->tcm_handle, tca, &fh);
> > > > -     if (err == 0)
> > > > +     if (err == 0) {
> > > > +             if (n->nlmsg_type == RTM_NEWTFILTER &&
> > > > +                 (n->nlmsg_flags&NLM_F_CREATE)) {
> 
> Since "tc filter replace" uses this type and flag too without creating
> tp, this check is not enough. I guess we could simply use a variable
> like tp_created etc. 

It will be superfluos. 
tp_created is the check
n->nlmsg_type == RTM_NEWTFILTER && n->nlmsg_flags&NLM_F_CREATE
replace will be
n->nlmsg_type == RTM_NEWTFILTER && n->nlmsg_flags & NLM_F_EXCL

> Anyway, changing this place looks tricky to me,
> so maybe it would be safer to do a separate cls_cgroup fix just for
> -stable, and this one patch for -next only?

I think they are two separate issues.
The fact that we dont destroy an allocated tp on failure is an issue
regardless of what cls_group does. In the case of Minoru's issue
it is because he is misconfiguring cls_group.

cheers,
jamal



_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers




More information about the Devel mailing list