From patchwork Mon Nov 30 18:18:59 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sunil Kovvuri X-Patchwork-Id: 7728781 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 6C48BBEEE1 for ; Mon, 30 Nov 2015 18:25:16 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 8DCF720576 for ; Mon, 30 Nov 2015 18:25:15 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id C6A4820553 for ; Mon, 30 Nov 2015 18:25:13 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1a3T22-0003Q7-W7; Mon, 30 Nov 2015 18:18:35 +0000 Received: from mail-pa0-x236.google.com ([2607:f8b0:400e:c03::236]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1a3T1R-0002jY-FX for linux-arm-kernel@lists.infradead.org; Mon, 30 Nov 2015 18:18:01 +0000 Received: by pacdm15 with SMTP id dm15so192168298pac.3 for ; Mon, 30 Nov 2015 10:17:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=c1BXBIPa66i5GTPsCcdEEXkMEZBCbrpQGysY27qApok=; b=MJ8KnLaRiUmdjewSQR0ZWTnJ9sEo6ejqdDwFpMVm1BJiZs8u8T2JU61AdKqLV0R2rO 5VEs0WuWSZr5YeFzvOh2pcxuFnMk6QNNQ3eYLw+noffXtcvGUqbfYiTBe1vhImynj2N+ MajmWKYUw0NDxHH52KAPM0DJXhJuxKNQRTBd3aD2gV86nxffSBK90Wsk/48ryQPJfg2l dPWhxS4XwwBGF1EgR2seAa8Q12K3uJXh2q/pZItrQS3MzTYFtlt6WOtvOpmu7fxIlckz W1TJaLzD/jRtZCPVeHNvt/KYYGtMEhe/8G4oXWwkKRjIViSeIwKiMFX1kx9c6qVxrCfN UkPQ== X-Received: by 10.66.243.3 with SMTP id wu3mr93266256pac.135.1448907456844; Mon, 30 Nov 2015 10:17:36 -0800 (PST) Received: from localhost.localdomain ([14.140.2.178]) by smtp.googlemail.com with ESMTPSA id fc8sm32001244pab.21.2015.11.30.10.17.33 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 30 Nov 2015 10:17:35 -0800 (PST) From: Sunil Goutham To: netdev@vger.kernel.org Subject: [PATCH 03/13] net: thunderx: Increase transmit queue length Date: Mon, 30 Nov 2015 23:48:59 +0530 Message-Id: <1448907549-5296-4-git-send-email-sunil.kovvuri@gmail.com> X-Mailer: git-send-email 1.7.1 In-Reply-To: References: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20151130_101757_804478_D6BE7572 X-CRM114-Status: GOOD ( 12.14 ) X-Spam-Score: -2.7 (--) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Sunil Goutham , Sunil.Goutham@caviumnetworks.com, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Spam-Status: No, score=-4.1 required=5.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_MED, T_DKIM_INVALID, T_RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Sunil Goutham Under high transmit rates and with TSO enabled observing fluctuations in TX performance. Seen especially with iperf3 application. Since TSO is taken care at driver level, with 64KB of TSO packets and when window size is also high the rate at which CPU fills in transmit descriptors is much higher than what HW is able to process. Each 64KB TSO packet occupies gets segmented to ~43 1500 byte MTU packets and occupies ~130 descriptors. Hence increasing transmit queue size. Signed-off-by: Sunil Goutham --- drivers/net/ethernet/cavium/thunder/nicvf_queues.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/cavium/thunder/nicvf_queues.h b/drivers/net/ethernet/cavium/thunder/nicvf_queues.h index fb4957d..b1e93a9 100644 --- a/drivers/net/ethernet/cavium/thunder/nicvf_queues.h +++ b/drivers/net/ethernet/cavium/thunder/nicvf_queues.h @@ -62,7 +62,7 @@ #define SND_QUEUE_CNT 8 #define CMP_QUEUE_CNT 8 /* Max of RCV and SND qcount */ -#define SND_QSIZE SND_QUEUE_SIZE2 +#define SND_QSIZE SND_QUEUE_SIZE3 #define SND_QUEUE_LEN (1ULL << (SND_QSIZE + 10)) #define MAX_SND_QUEUE_LEN (1ULL << (SND_QUEUE_SIZE6 + 10)) #define SND_QUEUE_THRESH 2ULL @@ -73,7 +73,7 @@ /* Keep CQ and SQ sizes same, if timestamping * is enabled this equation will change. */ -#define CMP_QSIZE CMP_QUEUE_SIZE2 +#define CMP_QSIZE CMP_QUEUE_SIZE3 #define CMP_QUEUE_LEN (1ULL << (CMP_QSIZE + 10)) #define CMP_QUEUE_CQE_THRESH 0 #define CMP_QUEUE_TIMER_THRESH 220 /* 10usec */