mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-07 23:20:32 -04:00
dpaa2-eth: Fix possible access beyond end of array
Make sure we don't try to enqueue XDP_REDIRECT frames to an
inexistent FQ.
While it is guaranteed not to have more than one queue per core,
having fewer queues than CPUs on an interface is a valid
configuration.
Fixes: d678be1dc1 ("dpaa2-eth: add XDP_REDIRECT support")
Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
cb8075d934
commit
64447506f1
@@ -1817,7 +1817,7 @@ static int dpaa2_eth_xdp_xmit_frame(struct net_device *net_dev,
|
||||
dpaa2_fd_set_format(&fd, dpaa2_fd_single);
|
||||
dpaa2_fd_set_ctrl(&fd, FD_CTRL_PTA);
|
||||
|
||||
fq = &priv->fq[smp_processor_id()];
|
||||
fq = &priv->fq[smp_processor_id() % dpaa2_eth_queue_count(priv)];
|
||||
for (i = 0; i < DPAA2_ETH_ENQUEUE_RETRIES; i++) {
|
||||
err = priv->enqueue(priv, fq, &fd, 0);
|
||||
if (err != -EBUSY)
|
||||
|
||||
Reference in New Issue
Block a user