It delays until all currently executing RCU read-side sections have
executed (new ones don't count, just currently executing ones). I'm not
sure what this delay is, but I would expect it to be fairly small. This
function is only called when a socket is closed, too, so it's not a
high-runner. Paul would certainly know better than me.
I'd prefer that, too, but that would mean adding another member to the
socket structure.
RCU probably wouldn't be a good choice for short-lived http sessions,
since you will only get a couple of messages that would matter. I'm not
against adding an item to struct sock, but this is not a common thing
and struct sock was already big and ugly.
That's an interesting thought; I didn't know that capability was there.
I can look at that. With this, the short-lived TCP sessions might not
matter, though that's a different issue.
-corey
--