CVE-2024-47734

bonding: Fix unnecessary warnings and logs from bond_xdp_get_xmit_slave()

published October 21, 2024

CVSS
—
EPSS
0%
Percentile
14.2
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

bonding: Fix unnecessary warnings and logs from bond_xdp_get_xmit_slave()

syzbot reported a WARNING in bond_xdp_get_xmit_slave. To reproduce

this[1], one bond device (bond1) has xdpdrv, which increases

bpf_master_redirect_enabled_key. Another bond device (bond0) which is

unsupported by XDP but its slave (veth3) has xdpgeneric that returns

XDP_TX. This triggers WARN_ON_ONCE() from the xdp_master_redirect().

To reduce unnecessary warnings and improve log management, we need to

delete the WARN_ON_ONCE() and add ratelimit to the netdev_err().

[1] Steps to reproduce:

# Needs tx_xdp with return XDP_TX;

ip l add veth0 type veth peer veth1

ip l add veth3 type veth peer veth4

ip l add bond0 type bond mode 6 # BOND_MODE_ALB, unsupported by XDP

ip l add bond1 type bond # BOND_MODE_ROUNDROBIN by default

ip l set veth0 master bond1

ip l set bond1 up

# Increases bpf_master_redirect_enabled_key

ip l set dev bond1 xdpdrv object tx_xdp.o section xdp_tx

ip l set veth3 master bond0

ip l set bond0 up

ip l set veth4 up

# Triggers WARN_ON_ONCE() from the xdp_master_redirect()

ip l set veth3 xdpgeneric object tx_xdp.o section xdp_tx

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00239 · 14.2th percentile
Published
2024-10-21T12:14Z
EPSS history
Timeline
  • 21 OCT 12:14Z
    bonding: Fix unnecessary warnings and logs from bond_xdp_get_xmit_slave()
    cvelistv5