On Fri, Feb 18, 2011 at 4:10 PM, Ben Pfaff <b...@nicira.com> wrote: > diff --git a/datapath/datapath.c b/datapath/datapath.c > index 940a581..dcff05f 100644 > --- a/datapath/datapath.c > +++ b/datapath/datapath.c > @@ -709,6 +709,15 @@ static int odp_packet_cmd_execute(struct sk_buff *skb, > struct genl_info *info) > if (err) > goto exit; > > + /* Initialize OVS_CB (it came from Netlink so might not be zeroed). */ > + OVS_CB(packet)->vport = NULL; > + OVS_CB(packet)->flow = NULL; > + /* execute_actions() will reset tun_id to 0 anyhow. */ > +#ifdef NEED_CSUM_NORMALIZE > + OVS_CB(packet)->ip_summed = OVS_CSUM_NONE; > +#endif > + vlan_copy_skb_tci(packet);
Is there a reason to not just do: memset(packet->cb, 0, sizeof(struct ovs_skb_cb)); It's essentially what we were getting before with the ioctls since alloc_skb() zeros out these fields and it's a bit nicer to not have to enumerate all of the members. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev_openvswitch.org