On Fri, Apr 14, 2017 at 09:25:41PM -0700, Ben Pfaff wrote: > This may help to suppress warnings from know-it-all compilers, and it helps > to make the code clearer too. > > Reported-by: Darrell Ball <[email protected]> > Signed-off-by: Ben Pfaff <[email protected]> > --- > Sorry, I didn't see v2 of the memset patch until I'd already applied v1. > Here's my version of this patch. > > lib/flow.c | 17 +++++++++-------- > 1 file changed, 9 insertions(+), 8 deletions(-) > > diff --git a/lib/flow.c b/lib/flow.c > index 2b1ec4fed7ef..9d2ff93e89e4 100644 > --- a/lib/flow.c > +++ b/lib/flow.c > @@ -2205,16 +2205,17 @@ void > flow_pop_vlan(struct flow *flow, struct flow_wildcards *wc) > { > int n = flow_count_vlan_headers(flow); > - if (n == 0) { > - return; > + if (n > 1) { > + if (wc) { > + memset(&wc->masks.vlans[1], 0xff, > + sizeof(union flow_vlan_hdr) * (n - 1)); > + } > + memmove(&flow->vlans[0], &flow->vlans[1], > + sizeof(union flow_vlan_hdr) * (n - 1)); > } > - if (wc) { > - memset(&wc->masks.vlans[1], 0xff, > - sizeof(union flow_vlan_hdr) * (n - 1)); > + if (n > 0) { > + memset(&flow->vlans[n - 1], 0, sizeof(union flow_vlan_hdr)); > } > - memmove(&flow->vlans[0], &flow->vlans[1], > - sizeof(union flow_vlan_hdr) * (n - 1)); > - memset(&flow->vlans[n - 1], 0, sizeof(union flow_vlan_hdr)); > } > > void > -- > 2.10.2
Thanks Ben and Darrell! Acked-by: Eric Garver <[email protected]> _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
