qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v4 16/47] Return path: Source handling of return


From: Dr. David Alan Gilbert
Subject: Re: [Qemu-devel] [PATCH v4 16/47] Return path: Source handling of return path
Date: Mon, 3 Nov 2014 13:22:45 +0000
User-agent: Mutt/1.5.23 (2014-03-12)

* David Gibson (address@hidden) wrote:
> On Fri, Oct 03, 2014 at 06:47:22PM +0100, Dr. David Alan Gilbert (git) wrote:
> > From: "Dr. David Alan Gilbert" <address@hidden>
> > 
> > Open a return path, and handle messages that are received upon it.
> > 
> > Signed-off-by: Dr. David Alan Gilbert <address@hidden>
> 
> [snip]
> > @@ -414,6 +448,11 @@ static void migrate_fd_cancel(MigrationState *s)
> >      int old_state ;
> >      trace_migrate_fd_cancel();
> >  
> > +    if (s->return_path) {
> > +        /* shutdown the rp socket, so causing the rp thread to shutdown */
> > +        qemu_file_shutdown(s->return_path);
> 
> Terminating the rp thread via shutting down its file seems roundabout,
> and kind of dependent on the socket file implementation.

The rp thread might be in the middle of a blocking read()/recv()
so I'm doing a shutdown() to cause those to exit; once I have to do that
anyway it didn't seem necessary to add anything etra.

> [snip]
> > +__attribute__ (( unused )) /* Until later in patch series */
> > +static int open_outgoing_return_path(MigrationState *ms)
> > +{
> > +
> > +    ms->return_path = qemu_file_get_return_path(ms->file);
> 
> So, another reason this get_return_path abstraction doesn't seem right
> to me, is that it's not obvious that for non-socket file types, the
> source and destination side "get return path" operations would
> necessarily be the same.

However, since the implementation of the get_return_path is a method
on the particular implementation, and it can be different for a 
qemu_file opened for read or write, then that non-socket file type
could implement it how it likes including something like shutdown).

Dave

> -- 
> David Gibson                  | I'll have my music baroque, and my code
> david AT gibson.dropbear.id.au        | minimalist, thank you.  NOT _the_ 
> _other_
>                               | _way_ _around_!
> http://www.ozlabs.org/~dgibson


--
Dr. David Alan Gilbert / address@hidden / Manchester, UK



reply via email to

[Prev in Thread] Current Thread [Next in Thread]