Message ID | 20140917173108.3864.57490.stgit@nitbit.x32 |
---|---|
State | Superseded, archived |
Delegated to: | David Miller |
Headers | show |
On Wed, 2014-09-17 at 10:31 -0700, John Fastabend wrote: > tc_u32_sel 'sel' in tc_u_knode expects to be the last element in the > structure and pads the structure with tc_u32_key fields for each key. > > kzalloc(sizeof(*n) + s->nkeys*sizeof(struct tc_u32_key), GFP_KERNEL) > > CC: Eric Dumazet <edumazet@google.com> > Signed-off-by: John Fastabend <john.r.fastabend@intel.com> > --- > net/sched/cls_u32.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/net/sched/cls_u32.c b/net/sched/cls_u32.c > index eceeb04..8462132 100644 > --- a/net/sched/cls_u32.c > +++ b/net/sched/cls_u32.c > @@ -64,8 +64,9 @@ struct tc_u_knode { > u32 __percpu *pcpu_success; > #endif > struct tcf_proto *tp; > - struct tc_u32_sel sel; > struct rcu_head rcu; > + struct tc_u32_sel sel; > + /* tc_u32_keys allocated at end of structure */ > }; > > struct tc_u_hnode { Sorry to be picky, but comment should be before 'sel' or at same line. It should mention that 'sel' MUST be last field. Thanks ! -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 09/17/2014 10:48 AM, Eric Dumazet wrote: > On Wed, 2014-09-17 at 10:31 -0700, John Fastabend wrote: >> tc_u32_sel 'sel' in tc_u_knode expects to be the last element in the >> structure and pads the structure with tc_u32_key fields for each key. >> >> kzalloc(sizeof(*n) + s->nkeys*sizeof(struct tc_u32_key), GFP_KERNEL) >> >> CC: Eric Dumazet <edumazet@google.com> >> Signed-off-by: John Fastabend <john.r.fastabend@intel.com> >> --- >> net/sched/cls_u32.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/net/sched/cls_u32.c b/net/sched/cls_u32.c >> index eceeb04..8462132 100644 >> --- a/net/sched/cls_u32.c >> +++ b/net/sched/cls_u32.c >> @@ -64,8 +64,9 @@ struct tc_u_knode { >> u32 __percpu *pcpu_success; >> #endif >> struct tcf_proto *tp; >> - struct tc_u32_sel sel; >> struct rcu_head rcu; >> + struct tc_u32_sel sel; >> + /* tc_u32_keys allocated at end of structure */ >> }; >> >> struct tc_u_hnode { > > Sorry to be picky, but comment should be before 'sel' or at same line. no problem lets get it right, I'll post a v3 now and write a better comment. > > It should mention that 'sel' MUST be last field. > > Thanks ! >
diff --git a/net/sched/cls_u32.c b/net/sched/cls_u32.c index eceeb04..8462132 100644 --- a/net/sched/cls_u32.c +++ b/net/sched/cls_u32.c @@ -64,8 +64,9 @@ struct tc_u_knode { u32 __percpu *pcpu_success; #endif struct tcf_proto *tp; - struct tc_u32_sel sel; struct rcu_head rcu; + struct tc_u32_sel sel; + /* tc_u32_keys allocated at end of structure */ }; struct tc_u_hnode {
tc_u32_sel 'sel' in tc_u_knode expects to be the last element in the structure and pads the structure with tc_u32_key fields for each key. kzalloc(sizeof(*n) + s->nkeys*sizeof(struct tc_u32_key), GFP_KERNEL) CC: Eric Dumazet <edumazet@google.com> Signed-off-by: John Fastabend <john.r.fastabend@intel.com> --- net/sched/cls_u32.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html