Received: by 10.213.65.68 with SMTP id h4csp657165imn; Fri, 16 Mar 2018 14:51:01 -0700 (PDT) X-Google-Smtp-Source: AG47ELudCqhoHKps+nOl9BzRJ7zg4r1D6WDTZmgwsNDzyeTFlkV8AM2ot2p5zbiFttCrleYhp7G+ X-Received: by 2002:a17:902:2862:: with SMTP id e89-v6mr3637284plb.348.1521237061463; Fri, 16 Mar 2018 14:51:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521237061; cv=none; d=google.com; s=arc-20160816; b=IyEU/gWpwsvSjow7+23I+SqlnYWuuUCX4I5QShlL/ZyHv34S2wMdKIIRV5QnB494rh crnlSObay9bc7RrsWByLGfi4rDHmKt4KEMIRiwAsV4F6X39BSPimOucaaBM86fgksAmM qi+/eld0KbM1FLMKdpE2jjZoItbjUCViuWAnDsNW+6mfuoMlkHqC2wbxrwFuWpt6onYI jq1gHw3CXFyZDcTTvrkf9FF+SevVc5sQP/hQqU2WeZSSdHlWEEIjL4i9KmXS4ox0GlVz W7lpmYQD30Swis3cR/ALUgFjbBkBghc18LJanRYVuoJhBnKKphSDQLgYZA5gvV8DVznw +l8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:date:subject:cc :to:from:arc-authentication-results; bh=aWGgpRLKHRUaGBlKAwvXiip9pxKWT+li1ZvwAMqrSI8=; b=ZGwQa2OeUP/e/8Yp6rjzwZtDyGizN0NXWYaXCdYz2DX8m3XHUtqLGpioULDB8IekWO 6lLBNUtowqv3L6Z+5zRVO61o88DTC0xcmgG7sEYohesln/JRuxbTPkVssU4YV4oDSKHX DxdJImi1+hC1TCntpT7HKlJ84xiOy1wp4XJbuNK0pZnEaRYWjqVoDanVjPRvYLeNdMkv Zdae0a8V9UmpEEeQYV96kcJn3pjJrSGL8QI38Mm18d8KzY6bA/vNSYtUQxtswfVEyiPF YrkvPA/zQJ6emS97Qr7JEY0R31T+Jlc+YCmz+jeXFKilgoH+gE6CvMOw831mmKO06vTo T8Rg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l5si5500699pgo.397.2018.03.16.14.50.47; Fri, 16 Mar 2018 14:51:01 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752415AbeCPVt2 (ORCPT + 99 others); Fri, 16 Mar 2018 17:49:28 -0400 Received: from ex13-edg-ou-002.vmware.com ([208.91.0.190]:17482 "EHLO EX13-EDG-OU-002.vmware.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752370AbeCPVt0 (ORCPT ); Fri, 16 Mar 2018 17:49:26 -0400 Received: from sc9-mailhost3.vmware.com (10.113.161.73) by EX13-EDG-OU-002.vmware.com (10.113.208.156) with Microsoft SMTP Server id 15.0.1156.6; Fri, 16 Mar 2018 14:49:10 -0700 Received: from ubuntu.eng.vmware.com (ubuntu.prom.eng.vmware.com [10.33.74.215]) by sc9-mailhost3.vmware.com (Postfix) with ESMTP id 47670407C6; Fri, 16 Mar 2018 14:49:26 -0700 (PDT) From: Ronak Doshi To: CC: , Ronak Doshi , Shrikrishna Khare , "VMware, Inc." , open list Subject: [PATCH v2 net 2/2] vmxnet3: use correct flag to indicate LRO feature Date: Fri, 16 Mar 2018 14:49:19 -0700 Message-ID: <20180316214919.20716-1-doshir@vmware.com> X-Mailer: git-send-email 2.11.0 MIME-Version: 1.0 Content-Type: text/plain Received-SPF: None (EX13-EDG-OU-002.vmware.com: doshir@vmware.com does not designate permitted sender hosts) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 'Commit 45dac1d6ea04 ("vmxnet3: Changes for vmxnet3 adapter version 2 (fwd)")' introduced a flag "lro" in structure vmxnet3_adapter which is used to indicate whether LRO is enabled or not. However, the patch did not set the flag and hence it was never exercised. So, when LRO is enabled, it resulted in poor TCP performance due to delayed acks. This issue is seen with packets which are larger than the mss getting a delayed ack rather than an immediate ack, thus resulting in high latency. This patch removes the lro flag and directly uses device features against NETIF_F_LRO to check if lro is enabled. Fixes: 45dac1d6ea04 ("vmxnet3: Changes for vmxnet3 adapter version 2 (fwd)") Reported-by: Rachel Lunnon Signed-off-by: Ronak Doshi Acked-by: Shrikrishna Khare --- Changes in v2: - Added "Fixes:" tag for the commit which introduced this issue drivers/net/vmxnet3/vmxnet3_drv.c | 3 ++- drivers/net/vmxnet3/vmxnet3_int.h | 5 ++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/vmxnet3/vmxnet3_drv.c b/drivers/net/vmxnet3/vmxnet3_drv.c index b466a422b72d..e04937f44f33 100644 --- a/drivers/net/vmxnet3/vmxnet3_drv.c +++ b/drivers/net/vmxnet3/vmxnet3_drv.c @@ -1473,7 +1473,8 @@ vmxnet3_rq_rx_complete(struct vmxnet3_rx_queue *rq, vmxnet3_rx_csum(adapter, skb, (union Vmxnet3_GenericDesc *)rcd); skb->protocol = eth_type_trans(skb, adapter->netdev); - if (!rcd->tcp || !adapter->lro) + if (!rcd->tcp || + !(adapter->netdev->features & NETIF_F_LRO)) goto not_lro; if (segCnt != 0 && mss != 0) { diff --git a/drivers/net/vmxnet3/vmxnet3_int.h b/drivers/net/vmxnet3/vmxnet3_int.h index b94fdfd0b6f1..99387a4a20a8 100644 --- a/drivers/net/vmxnet3/vmxnet3_int.h +++ b/drivers/net/vmxnet3/vmxnet3_int.h @@ -69,10 +69,10 @@ /* * Version numbers */ -#define VMXNET3_DRIVER_VERSION_STRING "1.4.12.0-k" +#define VMXNET3_DRIVER_VERSION_STRING "1.4.13.0-k" /* a 32-bit int, each byte encode a verion number in VMXNET3_DRIVER_VERSION */ -#define VMXNET3_DRIVER_VERSION_NUM 0x01040c00 +#define VMXNET3_DRIVER_VERSION_NUM 0x01040d00 #if defined(CONFIG_PCI_MSI) /* RSS only makes sense if MSI-X is supported. */ @@ -343,7 +343,6 @@ struct vmxnet3_adapter { u8 version; bool rxcsum; - bool lro; #ifdef VMXNET3_RSS struct UPT1_RSSConf *rss_conf; -- 2.11.0