kernel_samsung_a53x/drivers/net/ethernet/sfc
Zhipeng Lu db797e5e4c sfc: fix a double-free bug in efx_probe_filters
[ Upstream commit d5a306aedba34e640b11d7026dbbafb78ee3a5f6 ]

In efx_probe_filters, the channel->rps_flow_id is freed in a
efx_for_each_channel marco  when success equals to 0.
However, after the following call chain:

ef100_net_open
  |-> efx_probe_filters
  |-> ef100_net_stop
        |-> efx_remove_filters

The channel->rps_flow_id is freed again in the efx_for_each_channel of
efx_remove_filters, triggering a double-free bug.

Fixes: a9dc3d5612ce ("sfc_ef100: RX filter table management and related gubbins")
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Edward Cree <ecree.xilinx@gmail.com>
Signed-off-by: Zhipeng Lu <alexious@zju.edu.cn>
Link: https://lore.kernel.org/r/20231225112915.3544581-1-alexious@zju.edu.cn
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-18 12:12:06 +01:00
..
falcon Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bitfield.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef10.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef10_regs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef10_sriov.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef10_sriov.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100_ethtool.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100_ethtool.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100_netdev.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100_netdev.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100_nic.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100_nic.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100_regs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100_rx.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100_rx.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100_tx.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ef100_tx.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
efx.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
efx.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
efx_channels.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
efx_channels.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
efx_common.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
efx_common.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
enum.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ethtool.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ethtool_common.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ethtool_common.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
farch.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
farch_regs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
filter.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
io.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcdi.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcdi.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcdi_filters.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcdi_filters.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcdi_functions.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcdi_functions.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcdi_mon.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcdi_pcol.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcdi_port.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcdi_port.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcdi_port_common.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcdi_port_common.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mtd.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
net_driver.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
nic.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
nic.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
nic_common.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ptp.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ptp.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rx.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rx_common.c sfc: fix a double-free bug in efx_probe_filters 2024-11-18 12:12:06 +01:00
rx_common.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
selftest.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
selftest.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
siena.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
siena_sriov.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
siena_sriov.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sriov.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sriov.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tx.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tx.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tx_common.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tx_common.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tx_tso.c net: vlan: introduce skb_vlan_eth_hdr() 2024-11-18 12:11:48 +01:00
vfdi.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
workarounds.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00