[PATCH net-next] net: Remove shadow variable in netdev_run_todo()

Breno Leitao posted 1 patch 9 months, 3 weeks ago
net/core/dev.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
[PATCH net-next] net: Remove shadow variable in netdev_run_todo()
Posted by Breno Leitao 9 months, 3 weeks ago
Fix a shadow variable warning in net/core/dev.c when compiled with
CONFIG_LOCKDEP enabled. The warning occurs because 'dev' is redeclared
inside the while loop, shadowing the outer scope declaration.

	net/core/dev.c:11211:22: warning: declaration shadows a local variable [-Wshadow]
		struct net_device *dev = list_first_entry(&unlink_list,

	net/core/dev.c:11202:21: note: previous declaration is here
		struct net_device *dev, *tmp;

Remove the redundant declaration since the variable is already defined
in the outer scope and will be overwritten in the subsequent
list_for_each_entry_safe() loop anyway.

Signed-off-by: Breno Leitao <leitao@debian.org>
---
Sending this against `net-next` and not using "Fixes:" tag since I don't
think we want this to be backported to stable tree.
---
 net/core/dev.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/net/core/dev.c b/net/core/dev.c
index 18064be6cf3e3ae0949722a4ffffdc25fdd16b2e..c36b9b05364bab117ce51f3cc6ea5839245fd182 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -11208,9 +11208,8 @@ void netdev_run_todo(void)
 	list_replace_init(&net_unlink_list, &unlink_list);
 
 	while (!list_empty(&unlink_list)) {
-		struct net_device *dev = list_first_entry(&unlink_list,
-							  struct net_device,
-							  unlink_list);
+		dev = list_first_entry(&unlink_list, struct net_device,
+				       unlink_list);
 		list_del_init(&dev->unlink_list);
 		dev->nested_level = dev->lower_level - 1;
 	}

---
base-commit: bb3bb6c92e5719c0f5d7adb9d34db7e76705ac33
change-id: 20250221-netcons_fix_shadow-e2607c682129

Best regards,
-- 
Breno Leitao <leitao@debian.org>
Re: [PATCH net-next] net: Remove shadow variable in netdev_run_todo()
Posted by Eric Dumazet 9 months, 3 weeks ago
On Fri, Feb 21, 2025 at 6:51 PM Breno Leitao <leitao@debian.org> wrote:
>
> Fix a shadow variable warning in net/core/dev.c when compiled with
> CONFIG_LOCKDEP enabled. The warning occurs because 'dev' is redeclared
> inside the while loop, shadowing the outer scope declaration.
>
>         net/core/dev.c:11211:22: warning: declaration shadows a local variable [-Wshadow]
>                 struct net_device *dev = list_first_entry(&unlink_list,
>
>         net/core/dev.c:11202:21: note: previous declaration is here
>                 struct net_device *dev, *tmp;
>
> Remove the redundant declaration since the variable is already defined
> in the outer scope and will be overwritten in the subsequent
> list_for_each_entry_safe() loop anyway.
>
> Signed-off-by: Breno Leitao <leitao@debian.org>

Reviewed-by: Eric Dumazet <edumazet@google.com>