From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1C76F2DECA5 for ; Sun, 26 Oct 2025 12:45:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.43 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761482759; cv=none; b=p4v/dcb4mg8hIYAbIvXg/symLqVg0rbDWdABffivTnA6ubdJIgrUilcPBFcjiaogZKHGwZZro563XKrkVBPGhDunP6Tz8VPRcuWnM98tkVc5VCpYaqEiWIYHjOQZ1MmtKxIt5N45E7obhWE7b3RFevIK+vWGl22VZrLzwkez3Eo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761482759; c=relaxed/simple; bh=jta8UcMskjWbNypa5z0lHLxUyNsbNK0Nm1519GtFVQs=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=OfPiWaCCz9vGiiJ5IogaajYBgK8/edxBVUVeG1ZeqVOrFXEH+/6erbvyMrJE2+BdoBtNFtEDSr8UXfpY++GnxUdsGl022veMhQlQkXP/NKje9QVPEARC6u4dzKH1JT5AUZmZAm2tIC4f0iWlu6xoigZWFwtg074QOdQU43ZWoZo= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=jTr/t0GQ; arc=none smtp.client-ip=209.85.128.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="jTr/t0GQ" Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-475e01db75aso6924025e9.1 for ; Sun, 26 Oct 2025 05:45:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1761482756; x=1762087556; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=Q36qJLmrYKmdd1QEVA+Cbqtb2Y9+2l5D3yHSIltOmXY=; b=jTr/t0GQOf7ajug5gf3QY2Aj8KRAmAX06kLXbb1J/ToZXE+K+Wx1jXSrW5tHhA17wf +TTEK6EZB9s/kU2AjizJLCqFYeR2M1NHgqEiE1j5Sn7yaqJjHroP7LXK5dUy+Nplp/N7 DMe6byPyBWuWds7SFOG8zmnJ0XgwKbX2VtZYhH/pohzB7YmPewN45oIQo9okt+UcEsif xKLt7RTvhe94llewoyqoSA/MOUSo2QRSEfITqEwoCOa43jzZWASCFuCahl4sZwO9I4Kt c78i4XYj1qNMmTMyeZnJIVsvEy9TaJ8MqliJp7FcgWYLkAERbzOlpEucZpvoaMTBMohR ZM1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761482756; x=1762087556; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Q36qJLmrYKmdd1QEVA+Cbqtb2Y9+2l5D3yHSIltOmXY=; b=IygMPITMjb2sMxo/GcJ8Mo/eRJcYEgNKccY42RC0/S9WxCkg1cfxg3tK4Z/H10AaT+ UjeKAK0Ec9Z1ENCg0w0s3kxcr6DyLXCRnAS1Vcw3BM2QD/3LEBcm1P8ghPszUQY+QJIF NXORNeypa22RSqlmSc2FANOiALK9BwNAuBfr/tSsOAcJ0krfpL27r2/skJtm37euCN+D uyfve2T6boRmNUXcVwfX7Pbtdjw3onKUx9vQ5hDNcGRTYu8IwRfcVTG5HPK+GdhPPaqM xQfmXo1gyS1SC6Yf5XUWf5g3oje3BMyRKV0XlrKazqBYcAingH/jR7p3apXt73nLybdm mnSg== X-Forwarded-Encrypted: i=1; AJvYcCUYPeIoaFtECJGTEAIjP9GDEJy1Qh7kDiqu/RjnQ8L0crOdoDYJeoUaDykMALCJT6P3JPI8o64k1TVsvOU=@vger.kernel.org X-Gm-Message-State: AOJu0Ywg7hO0uEuGolmU8set7jLIqCVs4sFb31Z7AsA21lmzlFXNgsvN NzYO6iibvcfv/z4jS6Vwi7X/sos4YYbHgVAJdm+ExN46uJdQFt4iS3Ac X-Gm-Gg: ASbGncvdk5BnBjklx9cJ/HpATpFVVvcmxymwk64I7ZBAFJtE+kc74swWu42lBLR+usV Vkk05E888NrALwXX/iQQlo9SnT9Xf4QGhMG6SIxrLZJKGD9RdflHtyK1AFD2GX7ss3lY8cDzJor ueuGS7ZNMUlc3NY9fYCqEbLuUKtlWgaUB8zPru3TB3h+g/CBNSuT3Qqf6evA3GLPtGjnE6gxu7b e7HR8NuiplrKLeP+foI6fTBn1BgzJmtp669OJrfIKakdEJLAcYJu7IkIU1hg+z3L1oqTD0TlHDs msAgxetAvXHcvvL3TrJuojX8um/dkgt8QDSveO7bSHcm6UB+pyl8PhZ4f+lRVfAfPk8Bs8Z+D/A ZnM6UAgrmKztLzzVeI1xr3Dt4aVgdr30jfsrCRetpq8vapJlcGgQDk1iL9He1RWo+EyXyEjAXhb CPjGCTiEWkP08GQ0Rk3Onlyl218uNT//0htA== X-Google-Smtp-Source: AGHT+IHt5MAZo995R68Y4k9GXv4DRni8YIVI2eVz6novIi2dRMGcotavRNOIPiF0acEmlMfwdr/5OA== X-Received: by 2002:a05:600c:3512:b0:46e:5b74:4858 with SMTP id 5b1f17b1804b1-47117877122mr209197245e9.13.1761482756014; Sun, 26 Oct 2025 05:45:56 -0700 (PDT) Received: from [10.221.206.54] ([165.85.126.46]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-475dd02cd5dsm80346105e9.4.2025.10.26.05.45.54 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 26 Oct 2025 05:45:55 -0700 (PDT) Message-ID: Date: Sun, 26 Oct 2025 14:45:54 +0200 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH net-next 2/7] net/mlx5e: Use TIR API in mlx5e_modify_tirs_lb() To: Simon Horman , Tariq Toukan Cc: Eric Dumazet , Jakub Kicinski , Paolo Abeni , Andrew Lunn , "David S. Miller" , Saeed Mahameed , Leon Romanovsky , Mark Bloch , netdev@vger.kernel.org, linux-rdma@vger.kernel.org, linux-kernel@vger.kernel.org, Gal Pressman , Carolina Jubran , Dragos Tatulea References: <1761201820-923638-1-git-send-email-tariqt@nvidia.com> <1761201820-923638-3-git-send-email-tariqt@nvidia.com> Content-Language: en-US From: Tariq Toukan In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 23/10/2025 16:02, Simon Horman wrote: > On Thu, Oct 23, 2025 at 09:43:35AM +0300, Tariq Toukan wrote: > > ... > >> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en/tir.c b/drivers/net/ethernet/mellanox/mlx5/core/en/tir.c >> index 19499072f67f..0b55e77f19c8 100644 >> --- a/drivers/net/ethernet/mellanox/mlx5/core/en/tir.c >> +++ b/drivers/net/ethernet/mellanox/mlx5/core/en/tir.c >> @@ -146,6 +146,31 @@ void mlx5e_tir_builder_build_direct(struct mlx5e_tir_builder *builder) >> MLX5_SET(tirc, tirc, rx_hash_fn, MLX5_RX_HASH_FN_INVERTED_XOR8); >> } >> >> +static void mlx5e_tir_context_self_lb_block(void *tirc, bool enable_uc_lb, >> + bool enable_mc_lb) >> +{ >> + u8 lb_flags = 0; >> + >> + if (enable_uc_lb) >> + lb_flags = MLX5_TIRC_SELF_LB_BLOCK_BLOCK_UNICAST; >> + if (enable_mc_lb) >> + lb_flags |= MLX5_TIRC_SELF_LB_BLOCK_BLOCK_MULTICAST; >> + >> + MLX5_SET(tirc, tirc, self_lb_block, lb_flags); >> +} >> + >> +void mlx5e_tir_builder_build_self_lb_block(struct mlx5e_tir_builder *builder, >> + bool enable_uc_lb, >> + bool enable_mc_lb) >> +{ >> + void *tirc = mlx5e_tir_builder_get_tirc(builder); >> + >> + if (builder->modify) >> + MLX5_SET(modify_tir_in, builder->in, bitmask.self_lb_en, 1); >> + >> + mlx5e_tir_context_self_lb_block(tirc, enable_uc_lb, enable_mc_lb); >> +} >> + > > ... > >> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_common.c b/drivers/net/ethernet/mellanox/mlx5/core/en_common.c >> index 376a018b2db1..fad6b761f622 100644 >> --- a/drivers/net/ethernet/mellanox/mlx5/core/en_common.c >> +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_common.c >> @@ -250,43 +250,30 @@ void mlx5e_destroy_mdev_resources(struct mlx5_core_dev *mdev) >> int mlx5e_modify_tirs_lb(struct mlx5_core_dev *mdev, bool enable_uc_lb, >> bool enable_mc_lb) > > ... > >> - if (enable_uc_lb) >> - lb_flags = MLX5_TIRC_SELF_LB_BLOCK_BLOCK_UNICAST; >> - >> - if (enable_mc_lb) >> - lb_flags |= MLX5_TIRC_SELF_LB_BLOCK_BLOCK_MULTICAST; >> - >> - if (lb_flags) >> - MLX5_SET(modify_tir_in, in, ctx.self_lb_block, lb_flags); >> - >> - MLX5_SET(modify_tir_in, in, bitmask.self_lb_en, 1); >> + mlx5e_tir_builder_build_self_lb_block(builder, enable_uc_lb, >> + enable_mc_lb); > > Hi, > > Maybe I'm reading this wrong, and possibly it is not important, > but it seems to me that the update above reverses the > > ... > order of the MLX5_SET() invocations. > The order here is not important. The FW command is filled in any order and only then FW is called.