Re: [PATCH net-next] net: Remove redundant variable declaration in __dev_change_flags()

From: Mateusz Polchlopek
Date: Fri Feb 14 2025 - 08:32:39 EST




On 2/14/2025 1:47 PM, Breno Leitao wrote:
The old_flags variable is declared twice in __dev_change_flags(),
causing a shadow variable warning. This patch fixes the issue by
removing the redundant declaration, reusing the existing old_flags
variable instead.

net/core/dev.c:9225:16: warning: declaration shadows a local variable [-Wshadow]
9225 | unsigned int old_flags = dev->flags;
| ^
net/core/dev.c:9185:15: note: previous declaration is here
9185 | unsigned int old_flags = dev->flags;
| ^
1 warning generated.

This change has no functional impact on the code, as the inner variable
does not affect the outer one. The fix simply eliminates the unnecessary
declaration and resolves the warning.

Fixes: 991fb3f74c142e ("dev: always advertise rx_flags changes via netlink")
Signed-off-by: Breno Leitao <leitao@xxxxxxxxxx>
---
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 d5ab9a4b318ea4926c200ef20dae01eaafa18c6b..cd2474a138201e6ee86acf39ca425d57d8d2e9b4 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -9182,7 +9182,7 @@ int __dev_change_flags(struct net_device *dev, unsigned int flags,
if ((flags ^ dev->gflags) & IFF_PROMISC) {
int inc = (flags & IFF_PROMISC) ? 1 : -1;
- unsigned int old_flags = dev->flags;
+ old_flags = dev->flags;
dev->gflags ^= IFF_PROMISC;

---
base-commit: 7a7e0197133d18cfd9931e7d3a842d0f5730223f
change-id: 20250214-old_flags-528fe052471c

Best regards,

Good change but it has to be tagged to net and not net-next. Please
resend but add also my RB tag, thanks.

Reviewed-by: Mateusz Polchlopek <mateusz.polchlopek@xxxxxxxxx>