Wang Zhan wrote: > gso_features_check() compares the frame length against > netif_get_gso_max_size(), which picks the IPv4 or the IPv6 limit from > skb->protocol. A tag which is already inside the frame replaces that field > with the VLAN ethertype, as skb_vlan_push() does, and an IPv6 packet is > then measured against the IPv4 limit and segmented although the device > could send it as one TSO frame. > > The lookup moves from netdevice.h into dev.c: vlan_get_protocol() reads the > L3 protocol from behind an in-frame tag, while if_vlan.h includes > netdevice.h, so an inline in that header cannot call it. dev.c is the only > file which calls the lookup, so it becomes a static helper there. > > Assisted-by: LLM > Signed-off-by: Wang Zhan <[email protected]> > > --- > v4: > - drop the Fixes tag: not stable material > - move the limit lookup into dev.c, so it can use vlan_get_protocol() > v3: https://lore.kernel.org/[email protected]/ > v2: https://lore.kernel.org/[email protected]/ > v1: https://lore.kernel.org/[email protected]/
Reviewed-by: Willem de Bruijn <[email protected]> _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
