canqun zhang <canqunzhang@xxxxxxxxx> writes: > yes,Network namespaces in general can be cleaned up in any order,but > when doing /etc/ini.d/iptables restart, the system need cleaning up > all net namespace,and init_net should be cleanup lastly.init_net is > the first namespace,other net namespace is copied for it ,and it is > diuty for Initializing resources,so It in itself is special. "other net namespaces is copied for it" I don't have a clue what you mean by that. Every network namespace starts out in a default state not in a copied state. Nowhere else in the network stack does &init_net have the duty of initializing or cleaning up resources. That /etc/init.d/iptables restart removes modules in general is a little dubious. That /etc/init.d/iptables restart removes modules when there are other existing network namespaces using those modules is down right dangerous. Dangerous in the anyone can ssh into the machine way. I suspect it has taken 5 years for this bug to show up because it is so idiotic to remove code that someone else is using. I won't argue that making it so that &init_net is the last network namespace to go will solve this problem. But I can't see how adding the guarantee that &init_net will always be cleaned up last is a good long term solution. Removing the init_net special case gives a simpler mental model, and less to learn and maintain about network namespaces. Eric -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html