Re: [PATCH net] openvswitch: Fix ovs_flow_key_update()

From: Jiri Benc
Date: Thu Mar 30 2017 - 14:47:14 EST


On Thu, 30 Mar 2017 11:39:35 -0700, Yi-Hung Wei wrote:
> If we invalidate a flow key of a L3 packet, the flow's mac_proto is like this
> (MAC_PROTO_NONE | SW_FLOW_KEY_INVALID), then key_extract() will
> process the link layer of this L3 packet since mac_proto !=MAC_PROTO_NONE?
>
> In this case, shall we update key_extract() like this
> static int key_extract(struct sk_buff *skb, struct sw_flow_key *key)
>
> /* Link layer. */
> clear_vlan(key);
> - if (key->mac_proto == MAC_PROTO_NONE) {
> + if (key->mac_proto & MAC_PROTO_NONE) {

Use ovs_key_mac_proto(key) == MAC_PROTO_NONE.

Jiri