From patchwork Tue Dec 20 07:53:38 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yevgeny Petrilin X-Patchwork-Id: 132383 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 AB3C7B7019 for ; Tue, 20 Dec 2011 21:07:05 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752659Ab1LTKG7 (ORCPT ); Tue, 20 Dec 2011 05:06:59 -0500 Received: from eu1sys200aog113.obsmtp.com ([207.126.144.135]:55081 "HELO eu1sys200aog113.obsmtp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1752053Ab1LTKG6 (ORCPT ); Tue, 20 Dec 2011 05:06:58 -0500 Received: from MTLCAS01.mtl.com ([194.90.237.34]) (using TLSv1) by eu1sys200aob113.postini.com ([207.126.147.11]) with SMTP ID DSNKTvBePpiMGlonekwN8xcEtw1ZWMFc/zGU@postini.com; Tue, 20 Dec 2011 10:06:57 UTC Received: from vnc2.lab.mtl.com (10.4.45.2) by MTLCAS01.mtl.com (10.0.8.70) with Microsoft SMTP Server id 14.1.289.1; Tue, 20 Dec 2011 11:58:05 +0200 Message-ID: <4EF03F02.4010904@mellanox.co.il> Date: Tue, 20 Dec 2011 09:53:38 +0200 From: Yevgeny Petrilin User-Agent: Thunderbird 2.0.0.17 (X11/20080914) MIME-Version: 1.0 To: CC: , Subject: [PATCH net-next] mlx4_en: FIX: Setting default_qpn before using it X-Originating-IP: [10.4.45.2] Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Yevgeny Petrilin When UDP RSS is enabled, we use same QPN for TCP and UDP ranges The bug is that the default_qpn was used base UDP qpn before it was set. Fixes bug introduced in commit: 1202d460b1df3a77fda66f4ba5f90ae3527dd42f Signed-off-by: Yevgeny Petrilin --- drivers/net/ethernet/mellanox/mlx4/en_rx.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/net/ethernet/mellanox/mlx4/en_rx.c b/drivers/net/ethernet/mellanox/mlx4/en_rx.c index 630a7c1..e8d6ad2 100644 --- a/drivers/net/ethernet/mellanox/mlx4/en_rx.c +++ b/drivers/net/ethernet/mellanox/mlx4/en_rx.c @@ -898,11 +898,11 @@ int mlx4_en_config_rss_steer(struct mlx4_en_priv *priv) rss_context = ptr; rss_context->base_qpn = cpu_to_be32(ilog2(priv->rx_ring_num) << 24 | (rss_map->base_qpn)); + rss_context->default_qpn = cpu_to_be32(rss_map->base_qpn); if (priv->mdev->profile.udp_rss) { rss_mask |= MLX4_RSS_UDP_IPV4 | MLX4_RSS_UDP_IPV6; rss_context->base_qpn_udp = rss_context->default_qpn; } - rss_context->default_qpn = cpu_to_be32(rss_map->base_qpn); rss_context->flags = rss_mask; rss_context->hash_fn = MLX4_RSS_HASH_TOP; for (i = 0; i < 10; i++)