public inbox for netdev@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next v1 0/2] virtchnl/ice: add IEEE 802.1ah (0x88E7) VLAN ethertype support
@ 2026-03-18  8:07 Aleksandr Loktionov
  2026-03-18  8:07 ` [PATCH net-next v1 1/2] virtchnl: add VIRTCHNL_VLAN_ETHERTYPE_88E7 support Aleksandr Loktionov
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Aleksandr Loktionov @ 2026-03-18  8:07 UTC (permalink / raw)
  To: intel-wired-lan, anthony.l.nguyen, aleksandr.loktionov; +Cc: netdev

IEEE 802.1ah (Provider Backbone Bridging) defines the Backbone Service
Tag (B-TAG) with ethertype 0x88E7. In environments that combine Provider
Backbone Bridging with virtualisation, VFs may receive or transmit frames
carrying a B-TAG and need to install matching VLAN filters on the PF.

The existing virtchnl VLAN v2 capability handshake (via
VIRTCHNL_OP_GET_OFFLOAD_VLAN_V2_CAPS) has dedicated bitmask entries for
each supported ethertype (0x8100, 0x88A8, 0x9100) but lacked one for
0x88E7, making it impossible for a VF driver to advertise or negotiate
B-TAG support.

This series adds the missing capability flag and wires up the three
software-path checks in the ice PF driver that guard VLAN filter
installation:

  Patch 1 adds VIRTCHNL_VLAN_ETHERTYPE_88E7 = BIT(3) to the shared
  virtchnl_vlan_support enum in include/linux/avf/virtchnl.h.

  Patch 2 updates ice's TC TPID validation, VSI VLAN filter validation,
  and the bidirectional virtchnl VLAN v2 translation functions to
  accept/translate ETH_P_8021AH (0x88E7).

No hardware offload changes, no datapath modifications.

Tested on E810 with an iavf VF requesting 0x88E7-tagged VLAN filters:
  Verified that a TC flower rule matching on VLAN TPID 0x88E7 is now
  accepted and offloaded by the driver without returning -EINVAL:

    tc qdisc add dev $VF clsact
    tc filter add dev $VF ingress protocol 802.1Q flower \
        vlan_ethtype 0x88e7 action pass
    # (previously: Error: Failed to offload TC filter - vlan_type was 0)

  Also verified VF transparent passthrough of triple-tagged frames with
  0x88E7 as middle and innermost tag using scapy on a back-to-back E810
  pair (kernel 6.19.0-rc8+, FW 4.91, ICE Triple VLAN Comms DDP 1.3.88.88).

Aleksandr Loktionov (2):
  virtchnl: add VIRTCHNL_VLAN_ETHERTYPE_88E7 support
  ice: add 0x88E7 handling to SW validation paths

 drivers/net/ethernet/intel/ice/ice_tc_lib.c       | 1 +
 drivers/net/ethernet/intel/ice/ice_vsi_vlan_lib.c | 3 ++-
 drivers/net/ethernet/intel/ice/virt/virtchnl.c    | 6 ++++++
 include/linux/avf/virtchnl.h                      | 1 +
 4 files changed, 10 insertions(+), 1 deletion(-)

-- 
2.52.0


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-03-19 17:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-18  8:07 [PATCH net-next v1 0/2] virtchnl/ice: add IEEE 802.1ah (0x88E7) VLAN ethertype support Aleksandr Loktionov
2026-03-18  8:07 ` [PATCH net-next v1 1/2] virtchnl: add VIRTCHNL_VLAN_ETHERTYPE_88E7 support Aleksandr Loktionov
2026-03-18  8:07 ` [PATCH net-next v1 2/2] ice: add 0x88E7 handling to SW validation paths Aleksandr Loktionov
2026-03-19 17:11 ` [PATCH net-next v1 0/2] virtchnl/ice: add IEEE 802.1ah (0x88E7) VLAN ethertype support Simon Horman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox