qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [RFC 24/29] vhost+postcopy: Lock around set_mem_table


From: Dr. David Alan Gilbert
Subject: Re: [Qemu-devel] [RFC 24/29] vhost+postcopy: Lock around set_mem_table
Date: Fri, 7 Jul 2017 12:53:53 +0100
User-agent: Mutt/1.8.3 (2017-05-23)

* Maxime Coquelin (address@hidden) wrote:
> 
> 
> On 06/28/2017 09:00 PM, Dr. David Alan Gilbert (git) wrote:
> > From: "Dr. David Alan Gilbert"<address@hidden>
> > 
> > **HACK - better solution needed **
> > We have the situation where:
> > 
> >       qemu                      bridge
> > 
> >       send set_mem_table
> >                                map memory
> >    a)                          mark area with UFD
> >                                send reply with map addresses
> >    b)                          start using
> >    c) receive reply
> > 
> >    As soon as (a) happens qemu might start seeing faults
> > from memory accesses (but doesn't until b); but it can't
> > process those faults until (c) when it's received the
> > mmap addresses.
> > 
> > Make the fault handler spin until it gets the reply in (c).
> > 
> > At the very least this needs some proper locks, but preferably
> > we need to split the message.
> 
> Yes, maybe the slave channel could be used to send the ufds with
> a dedicated request? The backend would set the reply-ack flag, so that
> it starts accessing the guest memory only when Qemu is ready to handle
> faults.

Yes, that would make life a lot easier.

> Note that the slave channel support has not been implemented in Qemu's
> libvhost-user yet, but this is something I can do if we feel the need.

Can you tell me a bit about how the slave channel works?

Dave

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



reply via email to

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