From patchwork Wed Oct 29 03:30:35 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Dumazet X-Patchwork-Id: 404409 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 7DF6414003E for ; Wed, 29 Oct 2014 14:30:44 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752623AbaJ2Dah (ORCPT ); Tue, 28 Oct 2014 23:30:37 -0400 Received: from mail-pd0-f170.google.com ([209.85.192.170]:34853 "EHLO mail-pd0-f170.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751680AbaJ2Dag (ORCPT ); Tue, 28 Oct 2014 23:30:36 -0400 Received: by mail-pd0-f170.google.com with SMTP id z10so2085950pdj.29 for ; Tue, 28 Oct 2014 20:30:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:subject:from:to:cc:date:in-reply-to:references :content-type:mime-version:content-transfer-encoding; bh=mJrdziaSEGBLMBJGwRZ7pfCNPnImAULNHrMB9yMMpxI=; b=h9J2WvFdun/z1lgrLjkgskoKAtX3uP/kPOKjfIBzfV68k3Yn6EzammL94li5xbWWdt cF3VR0eexrKKIYmvPf2ma2ESbwnFRnM7xsANuPKaol5As6XGgik4GmQlIMWGbywtu+LU T0N4rSGNc3EnKzkOM3ZWSdWv6YNqqnkl8ViVQYoMS6UUQ6K1kH46kLXOYFzwcTAKYFrN DyHeS2TCOuHmvaxVACJmBhocIrucOYmHl5tHvOaNGawaMCYMN0fl0gYmJ2+XyvMKwDWN CHsSwehTv2zODM5sQdRM+5lpfN7oF8qLO43q/bhyOYzkBiEf6vBRH7rYH848DNzDtcZ0 m2xA== X-Received: by 10.67.29.177 with SMTP id jx17mr7818192pad.56.1414553436232; Tue, 28 Oct 2014 20:30:36 -0700 (PDT) Received: from [172.26.53.190] ([172.26.53.190]) by mx.google.com with ESMTPSA id yw3sm2865680pbc.88.2014.10.28.20.30.35 for (version=SSLv3 cipher=RC4-SHA bits=128/128); Tue, 28 Oct 2014 20:30:35 -0700 (PDT) Message-ID: <1414553435.631.41.camel@edumazet-glaptop2.roam.corp.google.com> Subject: Re: [PATCH net-next] net: introduce napi_schedule_irqoff() From: Eric Dumazet To: Alexei Starovoitov Cc: David Miller , netdev Date: Tue, 28 Oct 2014 20:30:35 -0700 In-Reply-To: References: <1414544713.631.30.camel@edumazet-glaptop2.roam.corp.google.com> X-Mailer: Evolution 3.10.4-0ubuntu2 Mime-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org On Tue, 2014-10-28 at 18:17 -0700, Alexei Starovoitov wrote: > Interesting! Are you trying to optimize some of such NIC drivers? ;) ?? > but all of 10G+ and virtio won't apply, right? Which 10G+ driver could not use this ? mlx4 patch would be : --- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/drivers/net/ethernet/mellanox/mlx4/en_rx.c b/drivers/net/ethernet/mellanox/mlx4/en_rx.c index c8e75dab80553c876b195361456fb49587231055..c562c1468944f9ad4319e5faaf19bf9e66d15eaf 100644 --- a/drivers/net/ethernet/mellanox/mlx4/en_rx.c +++ b/drivers/net/ethernet/mellanox/mlx4/en_rx.c @@ -878,8 +878,8 @@ void mlx4_en_rx_irq(struct mlx4_cq *mcq) struct mlx4_en_cq *cq = container_of(mcq, struct mlx4_en_cq, mcq); struct mlx4_en_priv *priv = netdev_priv(cq->dev); - if (priv->port_up) - napi_schedule(&cq->napi); + if (likely(priv->port_up)) + napi_schedule_irqoff(&cq->napi); else mlx4_en_arm_cq(priv, cq); } diff --git a/drivers/net/ethernet/mellanox/mlx4/en_tx.c b/drivers/net/ethernet/mellanox/mlx4/en_tx.c index 34c137878545fc672dad1a3d86e11c034c0ac368..5c4062921cdf46f1a7021a39705275c33ca4de77 100644 --- a/drivers/net/ethernet/mellanox/mlx4/en_tx.c +++ b/drivers/net/ethernet/mellanox/mlx4/en_tx.c @@ -479,8 +479,8 @@ void mlx4_en_tx_irq(struct mlx4_cq *mcq) struct mlx4_en_cq *cq = container_of(mcq, struct mlx4_en_cq, mcq); struct mlx4_en_priv *priv = netdev_priv(cq->dev); - if (priv->port_up) - napi_schedule(&cq->napi); + if (likely(priv->port_up)) + napi_schedule_irqoff(&cq->napi); else mlx4_en_arm_cq(priv, cq); }