struct pedit_headers {
        struct ethhdr  eth;
+       struct vlan_hdr vlan;
        struct iphdr   ip4;
        struct ipv6hdr ip6;
        struct tcphdr  tcp;
        OFFLOAD(SMAC_47_16, 4, eth.h_source[0], 0),
        OFFLOAD(SMAC_15_0,  2, eth.h_source[4], 0),
        OFFLOAD(ETHERTYPE,  2, eth.h_proto, 0),
+       OFFLOAD(FIRST_VID,  2, vlan.h_vlan_TCI, 0),
 
        OFFLOAD(IP_TTL, 1, ip4.ttl,   0),
        OFFLOAD(SIPV4,  4, ip4.saddr, 0),
 
        MLX5_ACTION_IN_FIELD_OUT_DIPV6_31_0    = 0x14,
        MLX5_ACTION_IN_FIELD_OUT_SIPV4         = 0x15,
        MLX5_ACTION_IN_FIELD_OUT_DIPV4         = 0x16,
+       MLX5_ACTION_IN_FIELD_OUT_FIRST_VID     = 0x17,
        MLX5_ACTION_IN_FIELD_OUT_IPV6_HOPLIMIT = 0x47,
 };