From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35205) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XUU5A-0007hb-0V for qemu-devel@nongnu.org; Thu, 18 Sep 2014 01:16:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XUU53-00070b-Rl for qemu-devel@nongnu.org; Thu, 18 Sep 2014 01:16:39 -0400 Received: from mx1.redhat.com ([209.132.183.28]:33542) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XUU53-00070I-Hl for qemu-devel@nongnu.org; Thu, 18 Sep 2014 01:16:33 -0400 Date: Thu, 18 Sep 2014 08:19:45 +0300 From: "Michael S. Tsirkin" Message-ID: <20140918051945.GB23433@redhat.com> References: <20140917083815.GA10450@redhat.com> <541956B8.1070203@huawei.com> <20140917095638.GA11743@redhat.com> <541A45C4.8060305@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <541A45C4.8060305@huawei.com> Subject: Re: [Qemu-devel] vhost-user: VHOST_SET_MEM_TABLE, VHOST_SET_VRING_CALL need a reply? List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Linhaifeng Cc: qemu-devel@nongnu.org, n.nikolaev@virtualopensystems.com, jerry.lilijun@huawei.com On Thu, Sep 18, 2014 at 10:39:00AM +0800, Linhaifeng wrote: > > > On 2014/9/17 17:56, Michael S. Tsirkin wrote: > > On Wed, Sep 17, 2014 at 05:39:04PM +0800, Linhaifeng wrote: > >> I think maybe is not need for the backend to wait for response. > >> > >> There is another way.vhost-user send "VHOST_GET_MEM_TABLE" to qemu then qemu send VHOST_SET_MEM_TABLE to update the regions of vhost-user.same as other command. > >> If qemu could response the request of the vhost-user.the vhost-user could update date at anytime. > > > > The updates are initiated by QEMU, as a result of IOMMU, > > memory hotplug or some other configuration change. > > yes.when memory unplug/plug should tell vhost-user. Right. So VHOST_SET_MEM_TABLE needs a response then, at least for cases when it's freeing memory. When memory is added, we can avoid waiting for the response if vhost-user can detect a fault and flush the incoming command pipe looking for VHOST_SET_MEM_TABLE. > > > >> I think it's very useful for Commercialization. > >> > >> On 2014/9/17 16:38, Michael S. Tsirkin wrote: > >>> Reply-To: > >>> > >>> Thinking about the vhost-user protocol, VHOST_SET_MEM_TABLE > >>> is used to update the memory mappings. > >>> > >>> So shouldn't we want for response? > >>> Otherwise e.g. guest can start using the memory > >>> that vhost-user can't access. > >>> > >>> Similarly, with an IOMMU vhost-user might access memory it shouldn't. > >>> > >>> VHOST_SET_VRING_CALL is used for MSI-X masking. > >>> Again, after vector is masted by switching the call fd, > >>> backend shouldn't assert the old one. > >>> > >>> Thoughts? > >>> > >>> > > > > . > >