* [PATCH net-next] xen-netfront: convert to GRO API
@ 2013-09-30 12:46 Wei Liu
2013-09-30 13:24 ` Ian Campbell
2013-10-02 19:54 ` David Miller
0 siblings, 2 replies; 4+ messages in thread
From: Wei Liu @ 2013-09-30 12:46 UTC (permalink / raw)
To: netdev; +Cc: xen-devel, konrad.wilk, Wei Liu, Anirban Chakraborty,
Ian Campbell
Anirban was seeing netfront received MTU size packets, which downgraded
throughput. The following patch makes netfront use GRO API which
improves throughput for that case.
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Cc: Anirban Chakraborty <abchak@juniper.net>
Cc: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Konrad Wilk <konrad.wilk@oracle.com>
---
drivers/net/xen-netfront.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/xen-netfront.c b/drivers/net/xen-netfront.c
index 36808bf..dd1011e 100644
--- a/drivers/net/xen-netfront.c
+++ b/drivers/net/xen-netfront.c
@@ -952,7 +952,7 @@ static int handle_incoming_queue(struct net_device *dev,
u64_stats_update_end(&stats->syncp);
/* Pass it up. */
- netif_receive_skb(skb);
+ napi_gro_receive(&np->napi, skb);
}
return packets_dropped;
@@ -1051,6 +1051,8 @@ err:
if (work_done < budget) {
int more_to_do = 0;
+ napi_gro_flush(napi, false);
+
local_irq_save(flags);
RING_FINAL_CHECK_FOR_RESPONSES(&np->rx, more_to_do);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH net-next] xen-netfront: convert to GRO API
2013-09-30 12:46 [PATCH net-next] xen-netfront: convert to GRO API Wei Liu
@ 2013-09-30 13:24 ` Ian Campbell
2013-10-01 20:32 ` Anirban Chakraborty
2013-10-02 19:54 ` David Miller
1 sibling, 1 reply; 4+ messages in thread
From: Ian Campbell @ 2013-09-30 13:24 UTC (permalink / raw)
To: Wei Liu; +Cc: netdev, xen-devel, konrad.wilk, Anirban Chakraborty
On Mon, 2013-09-30 at 13:46 +0100, Wei Liu wrote:
> Anirban was seeing netfront received MTU size packets, which downgraded
> throughput. The following patch makes netfront use GRO API which
> improves throughput for that case.
>
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> Cc: Anirban Chakraborty <abchak@juniper.net>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
> Acked-by: Konrad Wilk <konrad.wilk@oracle.com>
> ---
> drivers/net/xen-netfront.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/xen-netfront.c b/drivers/net/xen-netfront.c
> index 36808bf..dd1011e 100644
> --- a/drivers/net/xen-netfront.c
> +++ b/drivers/net/xen-netfront.c
> @@ -952,7 +952,7 @@ static int handle_incoming_queue(struct net_device *dev,
> u64_stats_update_end(&stats->syncp);
>
> /* Pass it up. */
> - netif_receive_skb(skb);
> + napi_gro_receive(&np->napi, skb);
> }
>
> return packets_dropped;
> @@ -1051,6 +1051,8 @@ err:
> if (work_done < budget) {
> int more_to_do = 0;
>
> + napi_gro_flush(napi, false);
> +
> local_irq_save(flags);
>
> RING_FINAL_CHECK_FOR_RESPONSES(&np->rx, more_to_do);
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH net-next] xen-netfront: convert to GRO API
2013-09-30 13:24 ` Ian Campbell
@ 2013-10-01 20:32 ` Anirban Chakraborty
0 siblings, 0 replies; 4+ messages in thread
From: Anirban Chakraborty @ 2013-10-01 20:32 UTC (permalink / raw)
To: Ian Campbell
Cc: Wei Liu, <netdev@vger.kernel.org>,
<xen-devel@lists.xen.org>, <konrad.wilk@oracle.com>
On Sep 30, 2013, at 6:24 AM, Ian Campbell <Ian.Campbell@citrix.com> wrote:
> On Mon, 2013-09-30 at 13:46 +0100, Wei Liu wrote:
>> Anirban was seeing netfront received MTU size packets, which downgraded
>> throughput. The following patch makes netfront use GRO API which
>> improves throughput for that case.
>>
>> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
>> Cc: Anirban Chakraborty <abchak@juniper.net>
>
> Acked-by: Ian Campbell <ian.campbell@citrix.com>
>
>> Acked-by: Konrad Wilk <konrad.wilk@oracle.com>
>> ---
>> drivers/net/xen-netfront.c | 4 +++-
>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/xen-netfront.c b/drivers/net/xen-netfront.c
>> index 36808bf..dd1011e 100644
>> --- a/drivers/net/xen-netfront.c
>> +++ b/drivers/net/xen-netfront.c
>> @@ -952,7 +952,7 @@ static int handle_incoming_queue(struct net_device *dev,
>> u64_stats_update_end(&stats->syncp);
>>
>> /* Pass it up. */
>> - netif_receive_skb(skb);
>> + napi_gro_receive(&np->napi, skb);
>> }
>>
>> return packets_dropped;
>> @@ -1051,6 +1051,8 @@ err:
>> if (work_done < budget) {
>> int more_to_do = 0;
>>
>> + napi_gro_flush(napi, false);
>> +
>> local_irq_save(flags);
>>
>> RING_FINAL_CHECK_FOR_RESPONSES(&np->rx, more_to_do);
>
We should apply it to stable as well. Thanks.
Anirban
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH net-next] xen-netfront: convert to GRO API
2013-09-30 12:46 [PATCH net-next] xen-netfront: convert to GRO API Wei Liu
2013-09-30 13:24 ` Ian Campbell
@ 2013-10-02 19:54 ` David Miller
1 sibling, 0 replies; 4+ messages in thread
From: David Miller @ 2013-10-02 19:54 UTC (permalink / raw)
To: wei.liu2; +Cc: netdev, xen-devel, konrad.wilk, abchak, ian.campbell
From: Wei Liu <wei.liu2@citrix.com>
Date: Mon, 30 Sep 2013 13:46:34 +0100
> Anirban was seeing netfront received MTU size packets, which downgraded
> throughput. The following patch makes netfront use GRO API which
> improves throughput for that case.
>
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> Cc: Anirban Chakraborty <abchak@juniper.net>
> Cc: Ian Campbell <ian.campbell@citrix.com>
> Acked-by: Konrad Wilk <konrad.wilk@oracle.com>
Applied, to net-next.
Anirban suggested to queue this to -stable but that is absolutely
not appropriate so I'm not doing that.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-10-02 19:54 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-30 12:46 [PATCH net-next] xen-netfront: convert to GRO API Wei Liu
2013-09-30 13:24 ` Ian Campbell
2013-10-01 20:32 ` Anirban Chakraborty
2013-10-02 19:54 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox