The MAC stats command takes a port ID, which doesn't exist on
pre-ef10 NICs (5000- and 6000- series). This is extracted from the
NIC specific data; we misinterpret this as the ef10 data structure,
causing us to read potentially unallocated data. With a KASAN kernel
this can cause errors with:
BUG: KASAN: slab-out-of-bounds in efx_mcdi_mac_stats
Fixes:
|
||
|---|---|---|
| .. | ||
| falcon | ||
| Kconfig | ||
| Makefile | ||
| bitfield.h | ||
| ef10.c | ||
| ef10_regs.h | ||
| ef10_sriov.c | ||
| ef10_sriov.h | ||
| efx.c | ||
| efx.h | ||
| enum.h | ||
| ethtool.c | ||
| farch.c | ||
| farch_regs.h | ||
| filter.h | ||
| io.h | ||
| mcdi.c | ||
| mcdi.h | ||
| mcdi_mon.c | ||
| mcdi_pcol.h | ||
| mcdi_port.c | ||
| mtd.c | ||
| net_driver.h | ||
| nic.c | ||
| nic.h | ||
| ptp.c | ||
| rx.c | ||
| selftest.c | ||
| selftest.h | ||
| siena.c | ||
| siena_sriov.c | ||
| siena_sriov.h | ||
| sriov.c | ||
| sriov.h | ||
| tx.c | ||
| tx.h | ||
| tx_tso.c | ||
| vfdi.h | ||
| workarounds.h | ||