On Tue, Jun 3, 2014 at 5:43 PM, Eric Dumazet [off-list ref] wrote:
On Tue, 2014-06-03 at 17:11 -0700, Cong Wang wrote:
quoted
"list_kill" is allocated on stack and it's a list head,
it is pointless to call list_del(&kill_list) especially
after unregister_netdevice_many().
How pointless exactly ? Explain more please.
I suggest you read various commits adding these list_del()
f87e6f47933e3ebeced9bb12615e830a72cedce4 is a good start.
If after unregister_netdevice_many() dev->unreg_list is still needed,
then it's a nightmare to maintain these list_head's in dev:
struct list_head dev_list;
struct list_head napi_list;
struct list_head unreg_list;
struct list_head close_list;
struct list_head todo_list;
Same for struct net.