On Mon, Jul 15, 2013 at 01:40:35PM -0700, Jesse Gross wrote: > On Mon, Jul 15, 2013 at 11:06 AM, Ben Pfaff <b...@nicira.com> wrote: > > This follows the pattern I see elsewhere for other "set" actions, but I am > > uncertain about some parts: > > > > * I am not sure that set_arp() is called in a context where there is > > guaranteed to be a full Ethernet+IP ARP header present in the packet, > > given megaflows. > > > > * set_arp() as written here allows an arp_op >=0x100 to be set even > > though flow_extract() only parses arp_op <0x100. This is probably > > not right, but I'm not sure of the correct fix. > > > > * The tree now has two (struct arp_eth_header *)skb_network_header(skb) > > casts, perhaps I should add an arp_eth_hdr() helper. > > > > Signed-off-by: Ben Pfaff <b...@nicira.com> > > I wonder if this makes sense to do in the kernel at all given the low > rate of ARP packets. In retrospect I probably wouldn't have done > ARP/ND matching in the kernel (and, yes, I remember that we used to do > it this way a long time ago).
OK. I will revise this patch to slow-path flows that set ARP fields, then. Thanks. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev