@@ -414,7 +414,7 @@ static void list_netdevice(struct net_device *dev)
414
414
/* Device list removal
415
415
* caller must respect a RCU grace period before freeing/reusing dev
416
416
*/
417
- static void unlist_netdevice (struct net_device * dev , bool lock )
417
+ static void unlist_netdevice (struct net_device * dev )
418
418
{
419
419
struct netdev_name_node * name_node ;
420
420
struct net * net = dev_net (dev );
@@ -427,13 +427,11 @@ static void unlist_netdevice(struct net_device *dev, bool lock)
427
427
netdev_name_node_del (name_node );
428
428
429
429
/* Unlink dev from the device chain */
430
- if (lock )
431
- write_lock (& dev_base_lock );
430
+ write_lock (& dev_base_lock );
432
431
list_del_rcu (& dev -> dev_list );
433
432
netdev_name_node_del (dev -> name_node );
434
433
hlist_del_rcu (& dev -> index_hlist );
435
- if (lock )
436
- write_unlock (& dev_base_lock );
434
+ write_unlock (& dev_base_lock );
437
435
438
436
dev_base_seq_inc (dev_net (dev ));
439
437
}
@@ -10338,9 +10336,9 @@ int register_netdevice(struct net_device *dev)
10338
10336
goto err_ifindex_release ;
10339
10337
10340
10338
ret = netdev_register_kobject (dev );
10341
- write_lock ( & dev_base_lock );
10339
+
10342
10340
WRITE_ONCE (dev -> reg_state , ret ? NETREG_UNREGISTERED : NETREG_REGISTERED );
10343
- write_unlock ( & dev_base_lock );
10341
+
10344
10342
if (ret )
10345
10343
goto err_uninit_notify ;
10346
10344
@@ -10629,9 +10627,7 @@ void netdev_run_todo(void)
10629
10627
continue ;
10630
10628
}
10631
10629
10632
- write_lock (& dev_base_lock );
10633
10630
WRITE_ONCE (dev -> reg_state , NETREG_UNREGISTERED );
10634
- write_unlock (& dev_base_lock );
10635
10631
linkwatch_sync_dev (dev );
10636
10632
}
10637
10633
@@ -11138,10 +11134,8 @@ void unregister_netdevice_many_notify(struct list_head *head,
11138
11134
11139
11135
list_for_each_entry (dev , head , unreg_list ) {
11140
11136
/* And unlink it from device chain. */
11141
- write_lock (& dev_base_lock );
11142
- unlist_netdevice (dev , false);
11137
+ unlist_netdevice (dev );
11143
11138
WRITE_ONCE (dev -> reg_state , NETREG_UNREGISTERING );
11144
- write_unlock (& dev_base_lock );
11145
11139
}
11146
11140
flush_all_backlogs ();
11147
11141
@@ -11323,7 +11317,7 @@ int __dev_change_net_namespace(struct net_device *dev, struct net *net,
11323
11317
dev_close (dev );
11324
11318
11325
11319
/* And unlink it from device chain */
11326
- unlist_netdevice (dev , true );
11320
+ unlist_netdevice (dev );
11327
11321
11328
11322
synchronize_net ();
11329
11323
0 commit comments