From: Linhaifeng <haifeng.lin@huawei.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: qemu-devel@nongnu.org, n.nikolaev@virtualopensystems.com,
jerry.lilijun@huawei.com
Subject: Re: [Qemu-devel] vhost-user: VHOST_SET_MEM_TABLE, VHOST_SET_VRING_CALL need a reply?
Date: Thu, 18 Sep 2014 20:39:57 +0800 [thread overview]
Message-ID: <541AD29D.4040903@huawei.com> (raw)
In-Reply-To: <20140918051657.GA23433@redhat.com>
On 2014/9/18 13:16, Michael S. Tsirkin wrote:
> On Thu, Sep 18, 2014 at 08:45:37AM +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.
>>
>> How to deal with the vhost-user restart?
>> when vhost-user restart it will lost the infomation which QEMU send.
>>
>> In the kernel mode vhost will restart with QEMU but in the user mode vhost will not.
>
> vhost-user must restart with qemu only.
>
Sometimes qemu not allowed to restart. e.g. The customer want to update the vhost-user to a newer version but don't want to restart the VM.
> The nature of virtio protocol is such that there's not enough in-memory
> state for host to gracefully recover from losing VQ state.
>
> We could add a new feature to allow recovery by reporting
> failure to guest, and disabling processing new requests.
> Guest could respond by recovering / discarding submitted
> requests, re-enabling the device (likely by executing a reset)
> and re-submitting requests.
>
>
> This would need a new feature bit though, and would have to
> be acknowledged by guest. As such this would have to be
> virtio 1.0 feature, virtio 0.x is frozen.
>
>>>
>>>> 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?
>>>>>
>>>>>
>>>
>>> .
>>>
>
> .
>
next prev parent reply other threads:[~2014-09-18 12:41 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-17 8:38 [Qemu-devel] vhost-user: VHOST_SET_MEM_TABLE, VHOST_SET_VRING_CALL need a reply? Michael S. Tsirkin
2014-09-17 9:39 ` Linhaifeng
2014-09-17 9:56 ` Michael S. Tsirkin
2014-09-18 0:45 ` Linhaifeng
2014-09-18 5:16 ` Michael S. Tsirkin
2014-09-18 12:39 ` Linhaifeng [this message]
2014-09-18 12:54 ` Michael S. Tsirkin
2014-09-18 2:39 ` Linhaifeng
2014-09-18 5:19 ` Michael S. Tsirkin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=541AD29D.4040903@huawei.com \
--to=haifeng.lin@huawei.com \
--cc=jerry.lilijun@huawei.com \
--cc=mst@redhat.com \
--cc=n.nikolaev@virtualopensystems.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).