Thread (28 messages) flat view 28 messages, 6 authors, 2012-01-23

Re: RFC Hanging clean-up of a namespace

From: Hagen Paul Pfeifer <hidden>
Date: 2012-01-19 21:41:00

* Eric W. Biederman | 2012-01-19 13:24:13 [-0800]:
This thread is a fascinating disconnect from reality all of the way
around.

- inet_twsk_purge already implements throwing out of timewait sockets
 when a network namespaces is being cleaned up.  So the RFC is nonsense.
This is how it is implemented, not how it should be. TIME_WAIT is not the
problem, it is there to keep the stack from sending wrong RST messages. Maybe
the 2*MSL could be fixed by a more accurate 2*RTT.
- Keeping the timewait sockets at that point we purge them in the code
 can achieve nothing.  We don't have any userspace processes or network
 devices associated with the timewait sockets at the point we get rid
 of them.  The network namespace exists so long as a userspace process
 can find it.  The network namespace exit is asynchronous in it's own
 workqueue so userspace definitely is not blocked.
Another possible solution could be a netns global TIME_WAIT list. But this
is a little bit expensive and out of question - but this _is_ a convenient
solution.

The "5 second reboot" is no argument - it show a discrepance between TCP
requirements and the actual situation.

Hagen
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help