From: "Michael S. Tsirkin" <mst@redhat.com>
To: Victor Kaplansky <vkaplans@redhat.com>
Cc: qemu-devel@nongnu.org, Maxime Coquelin <maxime.coquelin@redhat.com>
Subject: Re: [Qemu-devel] [PATCH] vhost-user spec: Clarify policy on setting log_base
Date: Tue, 28 Nov 2017 18:16:32 +0200 [thread overview]
Message-ID: <20171128181306-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20171128133123.17372-1-vkaplans@redhat.com>
On Tue, Nov 28, 2017 at 03:46:44PM +0200, Victor Kaplansky wrote:
> From: Victor Kaplansky <vkaplans@dell9020.localdomain>
>
> If we allow qemu to change logging area after it was already established,
> it may require from the backend to acquire a lock on each access to
> the log_base, which has a potential quite a big performance hit.
>
> Thus we would like to clarify in the spec, that qemu is not expected
> to resize or remap the logging area, and backend implementations
> can safely ignore subsequent requests to log_base modifications.
>
> Signed-off-by: Victor Kaplansky <vkaplans@redhat.com>
> Suggested-by: Maxime Coquelin <maxime.coquelin@redhat.com>
> ---
> docs/interop/vhost-user.txt | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/docs/interop/vhost-user.txt b/docs/interop/vhost-user.txt
> index 954771d0d8..7ab31e57ef 100644
> --- a/docs/interop/vhost-user.txt
> +++ b/docs/interop/vhost-user.txt
> @@ -257,6 +257,12 @@ Where addr is the guest physical address.
>
> Use atomic operations, as the log may be concurrently manipulated.
>
> +Note that master is not expected to issue more than one VHOST_USER_SET_LOG_BASE
> +request before the rings are fully stopped by the master. Thus no modifications
> +to log_base address are allowed before the rings are restated and the client
> +can ignore all subsequent VHOST_USER_SET_LOG_BASE requests after the log_base
> +address has been established.
> +
Do we actually issue VHOST_USER_SET_LOG_BASE when ring is started?
Can we put it simpler:
master must not send VHOST_USER_SET_LOG_BASE when ring
is started and logging of used ring writes is started.
?
> Note that when logging modifications to the used ring (when VHOST_VRING_F_LOG
> is set for this ring), log_guest_addr should be used to calculate the log
> offset: the write to first byte of the used ring is logged at this offset from
> --
> 2.14.2
next prev parent reply other threads:[~2017-11-28 16:16 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-28 13:46 [Qemu-devel] [PATCH] vhost-user spec: Clarify policy on setting log_base Victor Kaplansky
2017-11-28 16:04 ` Dr. David Alan Gilbert
2017-11-28 16:12 ` Michael S. Tsirkin
2017-11-28 17:38 ` Victor Kaplansky
2017-11-28 17:43 ` Dr. David Alan Gilbert
2017-11-28 18:17 ` Michael S. Tsirkin
2017-11-28 16:16 ` Michael S. Tsirkin [this message]
2017-11-28 17:29 ` Victor Kaplansky
2017-11-28 17:57 ` Michael S. Tsirkin
2017-11-28 17:43 ` Victor Kaplansky
2017-11-28 18:06 ` Michael S. Tsirkin
2017-11-28 18:34 ` Victor Kaplansky
2017-11-28 18:45 ` Michael S. Tsirkin
2017-11-28 20:55 ` Victor Kaplansky
2017-11-29 2:08 ` Jason Wang
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=20171128181306-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=maxime.coquelin@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=vkaplans@redhat.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.