Received: by 2002:a25:7ec1:0:0:0:0:0 with SMTP id z184csp6031632ybc; Wed, 27 Nov 2019 13:44:53 -0800 (PST) X-Google-Smtp-Source: APXvYqy6qTPCbbcsxFvA8QJ5LetJSb1fTyTt7sKonve9PapKiXny+L5Alk44H+C3N27tx/fGZnkp X-Received: by 2002:aa7:c898:: with SMTP id p24mr34193506eds.19.1574891093740; Wed, 27 Nov 2019 13:44:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1574891093; cv=none; d=google.com; s=arc-20160816; b=0QNeSDC87Z8qnBZf3vNycYMnMbTbhdZbv/WHFe9f+axEcXGaI83SII25Mhqi0vgY05 9PVOJsJ4IUSRFMImPpxOpPTqWjY/93TbIx1aoocbCsNuOWbWRQtc+RTMXfzXzd4tIzvb pIUej+Mzp6PoS7dTZHqG+hxmdffFSvprs9SVMqKXzLLyZDz1y6k0OwcgVL4z/l+OOjXj 3VAX6ExxfsmnIQ/BylAV1JXqxSZA0B/55ArvhKFNbpyXELEso3Wu1Emev4KGqEL8KoD9 EuenNu/yHfu+IUJfs7EIXj76Nc3CfPCkMwiZe82FblZHCnj4Tv5SoqxHwDJkkKwJ42hR mhug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=fpurTWePU2giuuSIBEhciKWeH3sNCMP/f3OCcph77TQ=; b=hdLlp4dfhfkE5v8HVEVp6De0Xb1wI4JVW17BgUFHVqoCTkv4Qf223VKdwfV0DcL6DZ PnPCRL1LBgbyLO/tlcH/w5/E1BrjJDk3N0+DTHcyM1MnVKdW76ZL592BhoZOgPBdmoPo 0OMhJAiSoaTQ+TD9ZY5sgUB/5Koxrd6qxKzpG1mXT4Vznfo/6p2y/0m5xH3WxzkQzr00 +8V+Vgn9I5usEUDCT+6q6FAIiaHCp94Jx7vRHTLqXBaVo3TxR6PI1CYTGSZnn0O/nKNE +Qw2vnKtHx6+nwP3FN68aktwQqwEqRScoagzXJXsjjeTq29XuFWlTX5nLlel/P2ifNK0 a5Zg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=MrHCb6b0; 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 f7si12028376edy.92.2019.11.27.13.44.30; Wed, 27 Nov 2019 13:44:53 -0800 (PST) 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; dkim=pass header.i=@kernel.org header.s=default header.b=MrHCb6b0; 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 S1728595AbfK0UnE (ORCPT + 99 others); Wed, 27 Nov 2019 15:43:04 -0500 Received: from mail.kernel.org ([198.145.29.99]:49940 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728934AbfK0Um6 (ORCPT ); Wed, 27 Nov 2019 15:42:58 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id CB40F21780; Wed, 27 Nov 2019 20:42:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1574887377; bh=55QJa0/qN3W+hhW2WiN2ehyXwX7TS3HfPxyJsp8ucvc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MrHCb6b03DXqkuUemZeG0BfbJjA+ysI+ftV/2fuQzywxRJXyk8gYQVEIQL9vbsgCJ hMRzg3GWCyQq7eUMjVKhnBqEE/Se+9RYTFmpAtL0pZlT4gHN0FMwbFj8yIDmVr2JrT 8cwheNHSmPZhO7RnaArrGVxL/ESdwfMNNNPzsbo4= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Eric Dumazet , "David S. Miller" , Sasha Levin Subject: [PATCH 4.9 087/151] net: do not abort bulk send on BQL status Date: Wed, 27 Nov 2019 21:31:10 +0100 Message-Id: <20191127203036.805304992@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191127203000.773542911@linuxfoundation.org> References: <20191127203000.773542911@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Eric Dumazet [ Upstream commit fe60faa5063822f2d555f4f326c7dd72a60929bf ] Before calling dev_hard_start_xmit(), upper layers tried to cook optimal skb list based on BQL budget. Problem is that GSO packets can end up comsuming more than the BQL budget. Breaking the loop is not useful, since requeued packets are ahead of any packets still in the qdisc. It is also more expensive, since next TX completion will push these packets later, while skbs are not in cpu caches. It is also a behavior difference with TSO packets, that can break the BQL limit by a large amount. Note that drivers should use __netdev_tx_sent_queue() in order to have optimal xmit_more support, and avoid useless atomic operations as shown in the following patch. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- net/core/dev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/core/dev.c b/net/core/dev.c index 547b4daae5cad..c6fb7e61cb405 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -2997,7 +2997,7 @@ struct sk_buff *dev_hard_start_xmit(struct sk_buff *first, struct net_device *de } skb = next; - if (netif_xmit_stopped(txq) && skb) { + if (netif_tx_queue_stopped(txq) && skb) { rc = NETDEV_TX_BUSY; break; } -- 2.20.1