[PATCH] net: macb: Increase DMA buffer size

Subsystems: atmel macb ethernet driver, networking drivers, the rest

STALE3653d REVIEWED: 2 (0M)

2 review trailers.

4 messages, 3 authors, 2016-08-26 · open the first message on its own page

[PATCH] net: macb: Increase DMA buffer size

From: Xander Huff <hidden>
Date: 2016-08-24 18:57:16

From: Nathan Sullivan <redacted>

In recent testing with the RT patchset, we have seen cases where the
transmit ring can fill even with up to 200 txbds in the ring.  Increase
the size of the DMA rings to avoid overruns.

Signed-off-by: Nathan Sullivan <redacted>
Acked-by: Ben Shelton <redacted>
Acked-by: Jaeden Amero <redacted>
Natinst-ReviewBoard-ID: 83662
---
 drivers/net/ethernet/cadence/macb.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/cadence/macb.c b/drivers/net/ethernet/cadence/macb.c
index 3256839..86a8e20 100644
--- a/drivers/net/ethernet/cadence/macb.c
+++ b/drivers/net/ethernet/cadence/macb.c
@@ -35,12 +35,12 @@
 
 #include "macb.h"
 
-#define MACB_RX_BUFFER_SIZE	128
+#define MACB_RX_BUFFER_SIZE	1536
 #define RX_BUFFER_MULTIPLE	64  /* bytes */
 #define RX_RING_SIZE		512 /* must be power of 2 */
 #define RX_RING_BYTES		(sizeof(struct macb_dma_desc) * RX_RING_SIZE)
 
-#define TX_RING_SIZE		128 /* must be power of 2 */
+#define TX_RING_SIZE		512 /* must be power of 2 */
 #define TX_RING_BYTES		(sizeof(struct macb_dma_desc) * TX_RING_SIZE)
 
 /* level of occupied TX descriptors under which we wake up TX process */
-- 
1.9.1

Re: [PATCH] net: macb: Increase DMA buffer size

From: Nicolas Ferre <hidden>
Date: 2016-08-24 19:17:17

Le 24/08/2016 à 20:25, Xander Huff a écrit :
quoted hunk
From: Nathan Sullivan <redacted>

In recent testing with the RT patchset, we have seen cases where the
transmit ring can fill even with up to 200 txbds in the ring.  Increase
the size of the DMA rings to avoid overruns.

Signed-off-by: Nathan Sullivan <redacted>
Acked-by: Ben Shelton <redacted>
Acked-by: Jaeden Amero <redacted>
Natinst-ReviewBoard-ID: 83662
---
 drivers/net/ethernet/cadence/macb.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/cadence/macb.c b/drivers/net/ethernet/cadence/macb.c
index 3256839..86a8e20 100644
--- a/drivers/net/ethernet/cadence/macb.c
+++ b/drivers/net/ethernet/cadence/macb.c
@@ -35,12 +35,12 @@
 
 #include "macb.h"
 
-#define MACB_RX_BUFFER_SIZE	128
+#define MACB_RX_BUFFER_SIZE	1536
This change seems not covered by the commit message. Can you  please
separate the changes in 2 patches or elaborate a bit more the reason for
this RX buffer size change.

Bye,
 #define RX_BUFFER_MULTIPLE	64  /* bytes */
 #define RX_RING_SIZE		512 /* must be power of 2 */
 #define RX_RING_BYTES		(sizeof(struct macb_dma_desc) * RX_RING_SIZE)
 
-#define TX_RING_SIZE		128 /* must be power of 2 */
+#define TX_RING_SIZE		512 /* must be power of 2 */
 #define TX_RING_BYTES		(sizeof(struct macb_dma_desc) * TX_RING_SIZE)
 
 /* level of occupied TX descriptors under which we wake up TX process */

-- 
Nicolas Ferre

[PATCH v2] net: macb: Increase DMA TX buffer size

From: Xander Huff <hidden>
Date: 2016-08-24 23:28:11

From: Nathan Sullivan <redacted>

In recent testing with the RT patchset, we have seen cases where the
transmit ring can fill even with up to 200 txbds in the ring. Increase the
size of the DMA TX ring to avoid overruns.

Signed-off-by: Xander Huff <redacted>
Signed-off-by: Nathan Sullivan <redacted>
---
 drivers/net/ethernet/cadence/macb.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/cadence/macb.c b/drivers/net/ethernet/cadence/macb.c
index 3256839..3efddb7 100644
--- a/drivers/net/ethernet/cadence/macb.c
+++ b/drivers/net/ethernet/cadence/macb.c
@@ -40,7 +40,7 @@
 #define RX_RING_SIZE		512 /* must be power of 2 */
 #define RX_RING_BYTES		(sizeof(struct macb_dma_desc) * RX_RING_SIZE)
 
-#define TX_RING_SIZE		128 /* must be power of 2 */
+#define TX_RING_SIZE		512 /* must be power of 2 */
 #define TX_RING_BYTES		(sizeof(struct macb_dma_desc) * TX_RING_SIZE)
 
 /* level of occupied TX descriptors under which we wake up TX process */
-- 
1.9.1

Re: [PATCH v2] net: macb: Increase DMA TX buffer size

From: David Miller <hidden>
Date: 2016-08-26 00:16:41

From: Xander Huff <redacted>
Date: Wed, 24 Aug 2016 17:25:39 -0500
From: Nathan Sullivan <redacted>

In recent testing with the RT patchset, we have seen cases where the
transmit ring can fill even with up to 200 txbds in the ring. Increase the
size of the DMA TX ring to avoid overruns.

Signed-off-by: Xander Huff <redacted>
Signed-off-by: Nathan Sullivan <redacted>
This is really a short term solution.

While a larger TX ring may help RT, it's wasteful to have a ring that
large on non-RT.  Both uses are valid.

Therefore what really needs to happen is to make this driver support
changing the RX and TX ring sizes at runtime via ethtool just like
pretty much every other driver.

THanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help