From: Paolo Bonzini <pbonzini@redhat.com>
To: Eric Blake <eblake@redhat.com>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
"open list:Block layer core" <qemu-block@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH for-2.6] nbd: don't request FUA on FLUSH
Date: Mon, 4 Apr 2016 09:34:07 +0200 [thread overview]
Message-ID: <570218EF.4040302@redhat.com> (raw)
In-Reply-To: <1459526902-32561-1-git-send-email-eblake@redhat.com>
On 01/04/2016 18:08, Eric Blake wrote:
> The NBD protocol does not clearly document what will happen
> if a client sends NBD_CMD_FLAG_FUA on NBD_CMD_FLUSH.
> Historically, both the qemu and upstream NBD servers silently
> ignored that flag, but that feels a bit risky. Meanwhile, the
> qemu NBD client unconditionally sends the flag (without even
> bothering to check whether the caller cares; at least with
> NBD_CMD_WRITE the client only sends FUA if requested by a
> higher layer).
>
> There is ongoing discussion on the NBD list to fix the
> protocol documentation to require that the server MUST ignore
> the flag (unless the kernel folks can better explain what FUA
> means for a flush), but until those doc improvements land, the
> current nbd.git master was recently changed to reject the flag
> with EINVAL (see nbd commit ab22e082), which now makes it
> impossible for a qemu client to use FLUSH with an upstream NBD
> server.
>
> We should not send FUA with flush unless the upstream protocol
> documents what it will do, and even then, it should be something
> that the caller can opt into, rather than being unconditional.
>
> Signed-off-by: Eric Blake <eblake@redhat.com>
> ---
> block/nbd-client.c | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/block/nbd-client.c b/block/nbd-client.c
> index 021a88b..878e879 100644
> --- a/block/nbd-client.c
> +++ b/block/nbd-client.c
> @@ -319,10 +319,6 @@ int nbd_client_co_flush(BlockDriverState *bs)
> return 0;
> }
>
> - if (client->nbdflags & NBD_FLAG_SEND_FUA) {
> - request.type |= NBD_CMD_FLAG_FUA;
> - }
> -
> request.from = 0;
> request.len = 0;
>
Thanks, queued for 2.6.
Paolo
prev parent reply other threads:[~2016-04-04 7:34 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-01 16:08 [Qemu-devel] [PATCH for-2.6] nbd: don't request FUA on FLUSH Eric Blake
2016-04-04 7:34 ` Paolo Bonzini [this message]
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=570218EF.4040302@redhat.com \
--to=pbonzini@redhat.com \
--cc=eblake@redhat.com \
--cc=kwolf@redhat.com \
--cc=qemu-block@nongnu.org \
--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 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.