On link down, the draining of the S/G cache should be done on all
_possible_ CPUs not just the ones that are online in that moment.
Fix this by changing the iterator.
Fixes: d70446ee1f40 ("dpaa2-eth: send a scatter-gather FD instead of
realloc-ing")
Reported-by: Jakub Kicinski <[email protected]>
Signed-off-by: Ioana Ciornei <[email protected]>
---
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
index bc1f1e0117b6..d0cc1dc49aaa 100644
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
@@ -1261,7 +1261,7 @@ static void dpaa2_eth_sgt_cache_drain(struct
dpaa2_eth_priv *priv)
u16 count;
int k, i;
- for_each_online_cpu(k) {
+ for_each_possible_cpu(k) {
sgt_cache = per_cpu_ptr(priv->sgt_cache, k);
count = sgt_cache->count;
--
2.25.1