]> git.baikalelectronics.ru Git - kernel.git/commit
net, bonding: Disallow vlan+srcmac with XDP
authorJussi Maki <joamaki@gmail.com>
Thu, 12 Aug 2021 14:52:41 +0000 (14:52 +0000)
committerJakub Kicinski <kuba@kernel.org>
Fri, 13 Aug 2021 21:03:28 +0000 (14:03 -0700)
commitb73b93f6316d3f53d6b705b246533bf0566ed9e4
treea0f33adadc502dabf2a903ab8b0ebe2ef928de77
parent0bf0747842a5f2fcda7868030c5c8e5af741c6cb
net, bonding: Disallow vlan+srcmac with XDP

The new vlan+srcmac xmit policy is not implementable with XDP since
in many cases the 802.1Q payload is not present in the packet. This
can be for example due to hardware offload or in the case of veth
due to use of skbuffs internally.

This also fixes the NULL deref with the vlan+srcmac xmit policy
reported by Jonathan Toppins by additionally checking the skb
pointer.

Fixes: 3050be04211f ("net, bonding: Refactor bond_xmit_hash for use with xdp_buff")
Reported-by: Jonathan Toppins <jtoppins@redhat.com>
Signed-off-by: Jussi Maki <joamaki@gmail.com>
Reviewed-by: Jonathan Toppins <jtoppins@redhat.com>
Link: https://lore.kernel.org/r/20210812145241.12449-1-joamaki@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/bonding/bond_main.c