[PATCH] macb: Fix tx completion check

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: David Dgien <dgienda125@xxxxxxxxx>

Check the send completion bit for the current packet in the descriptor
ring, instead of just the first entry in the ring.

This fixes issues when sending multiple small packets in quick
succession, such as with netconsole.

Reported-by: Billy Gomez <william.james.gomez@xxxxxxxxx>
Signed-off-by: David Dgien <dgienda125@xxxxxxxxx>
Fixes: aa2095304a ("macb: fix tx ring size")
---
 drivers/net/macb.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/macb.c b/drivers/net/macb.c
index 28c2fc860e37853a91488a675af3716d9f3843df..205e3169f17b2b762ba51640248a2ea96db5c582 100644
--- a/drivers/net/macb.c
+++ b/drivers/net/macb.c
@@ -132,7 +132,7 @@ static int macb_send(struct eth_device *edev, void *packet,
 	start = get_time_ns();
 	ret = -ETIMEDOUT;
 	do {
-		ctrl = readl(&macb->tx_ring[0].ctrl);
+		ctrl = readl(&macb->tx_ring[tx_head].ctrl);
 		if (ctrl & MACB_BIT(TX_USED)) {
 			ret = 0;
 			break;

---
base-commit: 1a3be5bdf6329e4e691f1d39461f5157767c7e72
change-id: 20250126-fix-macb-send-3600780f5de8

Best regards,
-- 
David Dgien <dgienda125@xxxxxxxxx>






[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux