From: Daniel Borkmann <[email protected]> Date: Sun, 08 Nov 2015 01:33:56 +0100
> Hmm, yeah, on a (only quick) look, it seems this is mostly needed for > the > virtio_net related code in packet_snd() / packet_recvmsg(), not > handled in > RX/TX ring paths actually. > > $ git grep -n gso_size net/packet/ > net/packet/af_packet.c:2748: if (vnet_hdr.gso_size == 0) > net/packet/af_packet.c:2825: skb_shinfo(skb)->gso_size = > net/packet/af_packet.c:2826: __virtio16_to_cpu(vio_le(), > vnet_hdr.gso_size); > net/packet/af_packet.c:3219: vnet_hdr.gso_size = > net/packet/af_packet.c:3220: __cpu_to_virtio16(vio_le(), > sinfo->gso_size); > > Need to take a closer look on Monday. I think for complete safety, we need the transport header set for all SKBs once they hit the device. I know this is separate from the bugs you are trying to fix, but let's take care of this in this series ok? -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
