diff mbox series

[v1] igc: Add scatter gather support

Message ID 20191030090848.20842-1-sasha.neftin@intel.com
State Superseded
Headers show
Series [v1] igc: Add scatter gather support | expand

Commit Message

Sasha Neftin Oct. 30, 2019, 9:08 a.m. UTC
Scatter gather is used to do DMA data transfers of data that is written to
noncontiguous areas of memory.
This patch enable scatter gather support.

Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
---
 drivers/net/ethernet/intel/igc/igc_main.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Paul Menzel Oct. 30, 2019, 9:43 a.m. UTC | #1
Dear Sasha,


On 30.10.19 10:08, Sasha Neftin wrote:
> Scatter gather is used to do DMA data transfers of data that is written to
> noncontiguous areas of memory.
> This patch enable scatter gather support.

enable*s*

Do you have numbers, if and how this improves performance?

How can this be tested?

[…]


Kind regards,

Paul
Sasha Neftin Oct. 30, 2019, 11:21 a.m. UTC | #2
On 10/30/2019 11:43, Paul Menzel wrote:
> Dear Sasha,
> 
> 
> On 30.10.19 10:08, Sasha Neftin wrote:
>> Scatter gather is used to do DMA data transfers of data that is 
>> written to
>> noncontiguous areas of memory.
>> This patch enable scatter gather support.
> 
> enable*s*
> 
Thanks Paul - I will fix it and submit v2.
> Do you have numbers, if and how this improves performance?
> 
Yes, I've checked on two machines with i225 HW. For example, I've 
observed as follow at 2.5Gbps link speed:
sg	on 	off
tcp	2352.93	2342.19 slightly improved
udp	2403.97	2403.49 almost no impact
Generally, I see the TCP stream more affected.
But you could observe different behavior on different machines.
> How can this be tested?
> 
> […]
I used netperf on my machines.
> 
> 
> Kind regards,
> 
> Paul
diff mbox series

Patch

diff --git a/drivers/net/ethernet/intel/igc/igc_main.c b/drivers/net/ethernet/intel/igc/igc_main.c
index 6105c6d1f3c9..c3266645c95e 100644
--- a/drivers/net/ethernet/intel/igc/igc_main.c
+++ b/drivers/net/ethernet/intel/igc/igc_main.c
@@ -4434,6 +4434,7 @@  static int igc_probe(struct pci_dev *pdev,
 		goto err_sw_init;
 
 	/* Add supported features to the features list*/
+	netdev->features |= NETIF_F_SG;
 	netdev->features |= NETIF_F_RXCSUM;
 	netdev->features |= NETIF_F_HW_CSUM;
 	netdev->features |= NETIF_F_SCTP_CRC;