Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1469652 > unrolled thread
| Started by | Xander Huff <xander.huff@ni.com> |
|---|---|
| First post | 2016-08-24 21:00 +0200 |
| Last post | 2016-08-26 02:20 +0200 |
| Articles | 4 — 3 participants |
Back to article view | Back to linux.kernel
[PATCH] net: macb: Increase DMA buffer size Xander Huff <xander.huff@ni.com> - 2016-08-24 21:00 +0200
Re: [PATCH] net: macb: Increase DMA buffer size Nicolas Ferre <nicolas.ferre@atmel.com> - 2016-08-24 21:20 +0200
[PATCH v2] net: macb: Increase DMA TX buffer size Xander Huff <xander.huff@ni.com> - 2016-08-25 01:30 +0200
Re: [PATCH v2] net: macb: Increase DMA TX buffer size David Miller <davem@redhat.com> - 2016-08-26 02:20 +0200
| From | Xander Huff <xander.huff@ni.com> |
|---|---|
| Date | 2016-08-24 21:00 +0200 |
| Subject | [PATCH] net: macb: Increase DMA buffer size |
| Message-ID | <s9Lz4-6dc-3@gated-at.bofh.it> |
From: Nathan Sullivan <nathan.sullivan@ni.com> 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 <nathan.sullivan@ni.com> Acked-by: Ben Shelton <ben.shelton@ni.com> Acked-by: Jaeden Amero <jaeden.amero@ni.com> 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
[toc] | [next] | [standalone]
| From | Nicolas Ferre <nicolas.ferre@atmel.com> |
|---|---|
| Date | 2016-08-24 21:20 +0200 |
| Message-ID | <s9LSp-6Bj-3@gated-at.bofh.it> |
| In reply to | #1469652 |
Le 24/08/2016 à 20:25, Xander Huff a écrit : > From: Nathan Sullivan <nathan.sullivan@ni.com> > > 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 <nathan.sullivan@ni.com> > Acked-by: Ben Shelton <ben.shelton@ni.com> > Acked-by: Jaeden Amero <jaeden.amero@ni.com> > 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
[toc] | [prev] | [next] | [standalone]
| From | Xander Huff <xander.huff@ni.com> |
|---|---|
| Date | 2016-08-25 01:30 +0200 |
| Subject | [PATCH v2] net: macb: Increase DMA TX buffer size |
| Message-ID | <s9PMm-17y-23@gated-at.bofh.it> |
| In reply to | #1469660 |
From: Nathan Sullivan <nathan.sullivan@ni.com> 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 <xander.huff@ni.com> Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> --- 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
[toc] | [prev] | [next] | [standalone]
| From | David Miller <davem@redhat.com> |
|---|---|
| Date | 2016-08-26 02:20 +0200 |
| Subject | Re: [PATCH v2] net: macb: Increase DMA TX buffer size |
| Message-ID | <sad2h-888-9@gated-at.bofh.it> |
| In reply to | #1469786 |
From: Xander Huff <xander.huff@ni.com> Date: Wed, 24 Aug 2016 17:25:39 -0500 > From: Nathan Sullivan <nathan.sullivan@ni.com> > > 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 <xander.huff@ni.com> > Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> 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.
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web