[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <c6a9f1a8-7dba-5807-b5b2-0468280d50a4@gmail.com>
Date: Sun, 31 Mar 2019 15:18:48 +0200
From: Heiner Kallweit <hkallweit1@...il.com>
To: Realtek linux nic maintainers <nic_swsd@...ltek.com>,
David Miller <davem@...emloft.net>
Cc: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
Jesper Dangaard Brouer <brouer@...hat.com>,
Edward Cree <ecree@...arflare.com>
Subject: [PATCH net-next] r8169: use netif_receive_skb_list batching
Use netif_receive_skb_list() instead of napi_gro_receive() to benefit
from batched skb processing.
Signed-off-by: Heiner Kallweit <hkallweit1@...il.com>
---
drivers/net/ethernet/realtek/r8169.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c
index a8ca26c2a..c9ee1c8eb 100644
--- a/drivers/net/ethernet/realtek/r8169.c
+++ b/drivers/net/ethernet/realtek/r8169.c
@@ -6426,6 +6426,7 @@ static int rtl_rx(struct net_device *dev, struct rtl8169_private *tp, u32 budget
{
unsigned int cur_rx, rx_left;
unsigned int count;
+ LIST_HEAD(rx_list);
cur_rx = tp->cur_rx;
@@ -6501,7 +6502,7 @@ static int rtl_rx(struct net_device *dev, struct rtl8169_private *tp, u32 budget
if (skb->pkt_type == PACKET_MULTICAST)
dev->stats.multicast++;
- napi_gro_receive(&tp->napi, skb);
+ list_add_tail(&skb->list, &rx_list);
u64_stats_update_begin(&tp->rx_stats.syncp);
tp->rx_stats.packets++;
@@ -6516,6 +6517,8 @@ static int rtl_rx(struct net_device *dev, struct rtl8169_private *tp, u32 budget
count = cur_rx - tp->cur_rx;
tp->cur_rx = cur_rx;
+ netif_receive_skb_list(&rx_list);
+
return count;
}
--
2.21.0
Powered by blists - more mailing lists