On 11/17/14 8:48 PM, Jesse Gross wrote:
On Mon, Nov 17, 2014 at 10:46 AM, Lori Jakab <loja...@cisco.com> wrote:
On 11/17/14 8:28 PM, Jesse Gross wrote:
On Mon, Nov 17, 2014 at 9:24 AM, Lorand Jakab <loja...@cisco.com> wrote:
diff --git a/datapath/flow.c b/datapath/flow.c
index 69b13b3..b01f7bd 100644
--- a/datapath/flow.c
+++ b/datapath/flow.c
@@ -459,28 +459,31 @@ static int key_extract(struct sk_buff *skb, struct
sw_flow_key *key)

          skb_reset_mac_header(skb);

-       /* Link layer.  We are guaranteed to have at least the 14 byte
Ethernet
-        * header in the linear data area.
-        */
-       eth = eth_hdr(skb);
-       ether_addr_copy(key->eth.src, eth->h_source);
-       ether_addr_copy(key->eth.dst, eth->h_dest);
+       /* Link layer. */
+       if (key->phy.is_layer3) {
+               key->eth.tci = 0;
+               key->eth.type = skb->protocol;
Were you going to drop setting the TCI here?

Yes, but then I figured it out why I needed to set it: validation code is
relying on it in a few functions.
That's fine if it is being used. But out of curiosity, where?
I have to look it up, I know that without TCI being set to 0, L3 packets are not matching against the rule installed in the datapath and have to take the slow path again.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to