[RFC] Change socket checkpoint to retain DGRAM source addresses

Serge E. Hallyn serue at us.ibm.com
Mon Aug 24 17:06:32 PDT 2009


Quoting Dan Smith (danms at us.ibm.com):
> This is a proposed change to the way sockets are checkpointed.
> It makes the socket itself a proper objhash object, which can be
> checkpointed or restored as part of reading the stream (like many
> of the other first-class objects).  Thus, we worry about
> checkpointing and restoring the socket-typed file, and read the
> related socket object(s) as a matter of course.
> 
> By doing this, we are able to checkpoint sockets we find that
> aren't attached to descriptors.  This is used in the final patch
> to make sure that a socket buffer's owner socket has been
> checkpointed, allowing us to use that socket to re-send the
> buffer on restore (thus retaining the source address).
> 
> I've got a unit test for this that sets up three sockets, and
> loads some in-flight buffers before checkpoint, verifying that
> after checkpoint, recvfrom() sees them from the appropriate
> source socket.
> 
> Does this approach seem reasonable?  

I think so...  and so far haven't found any problems in the
code itself.  Will look a little more, but so far

Acked-by: Serge Hallyn <serue at us.ibm.com>

-serge


More information about the Containers mailing list