dev_change_net_namespace() and synchronize_net()

From: Nicolas Dichtel <hidden>
Date: 2009-01-27 10:33:34

Hi folks,

I'm asking me philosophical questions about synchronize_net(). In my 
understanding, it is used to ensure that processing of current packets are finished.

In function dev_change_net_namespace(), synchronize_net() is called twice:

One time, between dev_close() and dev_shutdown(). I don't understand why it's 
needed here:
  - if interface is down, no packet can be processed by it
  - if interface is up, dev_close() will call dev_deactivate() which will call 
synchronize_rcu() (equivalent to synchronize_net()).

Second time, synchronize_net() is called just before exiting. Is it really 
necessary?


Thank you for your answers,
Nicolas
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help