net: ethernet: mtk_eth_soc: fix possible NULL pointer dereference in mtk_xdp_run

Fix possible NULL pointer dereference in mtk_xdp_run() if the
ebpf program returns XDP_TX and xdp_convert_buff_to_frame routine fails
returning NULL.

Fixes: 5886d26fd2 ("net: ethernet: mtk_eth_soc: add xmit XDP support")
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://lore.kernel.org/r/627a07d759020356b64473e09f0855960e02db28.1660659112.git.lorenzo@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Lorenzo Bianconi 2022-08-16 16:16:15 +02:00 committed by Jakub Kicinski
parent d515f38c1e
commit a617ccc016
1 changed files with 1 additions and 1 deletions

View File

@ -1732,7 +1732,7 @@ static u32 mtk_xdp_run(struct mtk_eth *eth, struct mtk_rx_ring *ring,
case XDP_TX: { case XDP_TX: {
struct xdp_frame *xdpf = xdp_convert_buff_to_frame(xdp); struct xdp_frame *xdpf = xdp_convert_buff_to_frame(xdp);
if (mtk_xdp_submit_frame(eth, xdpf, dev, false)) { if (!xdpf || mtk_xdp_submit_frame(eth, xdpf, dev, false)) {
count = &hw_stats->xdp_stats.rx_xdp_tx_errors; count = &hw_stats->xdp_stats.rx_xdp_tx_errors;
act = XDP_DROP; act = XDP_DROP;
break; break;