From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) (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 C6E3135EDA0 for ; Thu, 5 Feb 2026 07:47:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.53 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770277651; cv=none; b=RgI330eVsvrXoX/opkenkJsnL3VCWzVh0+QhUXWU67HhwDLhNMMa9meoJpuDMK/k0hxo53Ee9zZp0fFLveye3OZTqZge3DMYfI3w7g0GwH9KTIz48mER554eThWM7qRdxwn3OcSvO9jNIsGtYyZ715R30/gEWnY1X6zaWVaFPbM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770277651; c=relaxed/simple; bh=lpLJPqAArX7Iuvct1n5ysPyMdIPUlZ3UA9Csaqg0/gk=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=a4vJQrSI61FGoe+Osq6ZQ1Bh6b+Opu5tZToz/k4E23d4FV2iZ04WGuL5UV9ltu3TurhAD1bwDXwhgvp1vsGg1Art2eTgoM4XkTw8nvoC1C1y5Vk5IJI34OiUGKoT6x33FGxWTc/Zm/ahefpM5YVEJalv7xN2wEFMlA0ZThLvpJw= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=cogentembedded.com; spf=pass smtp.mailfrom=cogentembedded.com; dkim=pass (2048-bit key) header.d=cogentembedded-com.20230601.gappssmtp.com header.i=@cogentembedded-com.20230601.gappssmtp.com header.b=ubv950V5; arc=none smtp.client-ip=209.85.128.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=cogentembedded.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=cogentembedded.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=cogentembedded-com.20230601.gappssmtp.com header.i=@cogentembedded-com.20230601.gappssmtp.com header.b="ubv950V5" Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-4801eb2c0a5so5060165e9.3 for ; Wed, 04 Feb 2026 23:47:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cogentembedded-com.20230601.gappssmtp.com; s=20230601; t=1770277649; x=1770882449; 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=gS8eTVscdu7wmx3oE8qRW7nf+y0FrAEFYszd1RiMygE=; b=ubv950V5xj7Yf3VwyCfUkLn468St+ca17NfDIVJ8r9yBFiEeYpxHXex0N9fcn14YAr HRp7Ykiza3Bp81qZVTDPTSoynEDXa78tqZsNATJQ5lBxu8hnpe2TXU85ToCPT2LzO7zD 6sXYd9bfrL/nPZ78OtFbYAVDJSbqAWLpRntl+EsCf6walZn1VGjTCMscJCLFJFwh//7I QlHXQmOEMzSTNmyGHaXaUEMLgvkYJYniYtUfWtEzwNdMsgJnV4rGkc28MWGB3Mn8UspD CBqCmlDFH+wd67QtQJCYY2b2gNDA2WSy2wI+FfU2lGLsTYpkLhn7PNjz39SXsYMoxvQT TLpQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770277649; x=1770882449; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=gS8eTVscdu7wmx3oE8qRW7nf+y0FrAEFYszd1RiMygE=; b=EpeNjnSVJpMtFXol1T11CuvpADB62ROt+EcmATH3yFSxAA7zUQkCBVYdI7y0V8iMea eiesxuAF8LAk5T9TnQBzqmG/4BucNTZ/di2nXEKx7POSpQtN2M3Ws/voey5kkAksvjgn jQL0ZNIlTMlJfGHHb/JZ80yG38PHhNSqJ7s5zM1nwtTNXRHMbV3ILfEuheOHXxNpN/oE rOwVD/mTmabWVUw97Eu6Iq0k/jAb/kvwITGg8fscCcixTUsWdfqvVByIVJZOrjdFMphs SjZEByS/WvgcUuXSL08QTOKgt8CR7518mNYfLv4WTz4i2xv7s/Zf6f6Pycw0t2a4UMzu 3Eug== X-Forwarded-Encrypted: i=1; AJvYcCX/EH9L5l4XL6UO9lpnKrZ+buVeA+Mc86W+CarUvmMTzulwYgtHDyefA4uoZvZkb1xw1J2qo4rkSCSRDdQ=@vger.kernel.org X-Gm-Message-State: AOJu0YxNG+0odYD9mc6ggz6i92b9xPrYEFofgruDYTUbcUod1U2TLKDH I+v2qtN2BvcQgPoDGGGvxShgRNbEzh8vA5c82SYtfE25KbE4YiaD8Reg5f9Fq7qg2lQ= X-Gm-Gg: AZuq6aIffZOruMXa+Jf1LZxzvSde/NMCizpPToJ/4zJ/1HJh3A+4F5c0XW3rLNsTrc4 Ukr7IYXClX7fkkJ8GM9hHDQh53hAGz1BsN5e1inKIKt/yq0DSCrynv0b3oMKyuCx6ZorBO/nEHK DMfvpRara0LVnbo86o9q8Ko5FFJ0DLRWGw7hobzBmkRxyA5AorYw8UKXV0uA57KBQgprYa7HMs2 pFUocxuHYwVs7WfjfcQfRzC8lsC3GSgfADX0RAYnHF9sxMz/jLvkR43RfIq12z54/rBilObL2Ed 1b7guS4JXh+O/awH/ZQOuM2JEehtA6kTzfqgr0tTNe0XZkPDNTR/GAJVP9Hzd/30CDa6+ZewS7Z 7/xQmP8KiXGnXod8fa/B4f6DhrebmSGyQbgTi2vE4/jJ2bBHqOeCVLdPy5ndwxUpKxwuWuogN12 cuHgIOjdWcCpVL2YwDfbzmJTiVdEB9jXu+ySq7 X-Received: by 2002:a05:600c:4e05:b0:477:c71:1fc1 with SMTP id 5b1f17b1804b1-4830e979260mr81218345e9.19.1770277649149; Wed, 04 Feb 2026 23:47:29 -0800 (PST) Received: from ?IPV6:2a02:810a:b98:a000::b3d5? ([2a02:810a:b98:a000::b3d5]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4830fe62fe7sm57328395e9.4.2026.02.04.23.47.28 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 04 Feb 2026 23:47:28 -0800 (PST) Message-ID: <3b1405cd-6c7f-4883-95fb-151cab223a68@cogentembedded.com> Date: Thu, 5 Feb 2026 08:47:27 +0100 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] net: renesas: rswitch: fix forwarding offload statemachine To: Michael Dege , Yoshihiro Shimoda , Andrew Lunn , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni Cc: netdev@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-kernel@vger.kernel.org References: <20260205-fix-offloading-statemachine-v1-1-640224a531d0@renesas.com> Content-Language: en-US, ru-RU From: Nikita Yushchenko In-Reply-To: <20260205-fix-offloading-statemachine-v1-1-640224a531d0@renesas.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hello Michael > - } else if (rdev->forwarding_offloaded) { > + } else if (rdev->forwarding_offloaded && > + !rdev->forwarding_requested) { > rswitch_change_l2_hw_offloading(rdev, false, false); > } Although indeed the condition in the current code is not correct, I'm not sure comfortable with this fix. Full condition for a port to be a valid candidate for hardware forwarding is rdev_for_l2_offload() && rdev->forwarding_requested It is not obvious if at this point rdev_for_l2_offload() could get changed from the last call to rswitch_change_l2_hw_offloading(), so using only the partial condition at this point does not look good for me. I'd suggest to either change to something like if (rdev_for_l2_offload() && rdev->forwarding_requested && !rdev->forwarding_offloaded) rswitch_change_l2_hw_offloading(rdev, true, false); if (!(rdev_for_l2_offload() && rdev->forwarding_requested) && rdev->forwarding_offloaded) rswitch_change_l2_hw_offloading(rdev, false, false); Or maybe just if (rdev_for_l2_offload() && rdev->forwarding_requested) rswitch_change_l2_hw_offloading(rdev, true, false); else rswitch_change_l2_hw_offloading(rdev, false, false); since rswitch_change_l2_hw_offloading() has internal check for the current state and returns early if the requested change is already applied. Nikita