[Top][All Lists]

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

Re: [Qemu-block] [Qemu-devel] [PATCH 2/5] nbd: Prepare for NBD_CMD_FLAG_

From: Eric Blake
Subject: Re: [Qemu-block] [Qemu-devel] [PATCH 2/5] nbd: Prepare for NBD_CMD_FLAG_FAST_ZERO
Date: Tue, 3 Sep 2019 13:49:38 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0

On 8/30/19 1:07 PM, Vladimir Sementsov-Ogievskiy wrote:
> 23.08.2019 17:37, Eric Blake wrote:
>> Commit fe0480d6 and friends added BDRV_REQ_NO_FALLBACK as a way to
>> avoid wasting time on a preliminary write-zero request that will later
>> be rewritten by actual data, if it is known that the write-zero
>> request will use a slow fallback; but in doing so, could not optimize
>> for NBD.  The NBD specification is now considering an extension that
>> will allow passing on those semantics; this patch updates the new
>> protocol bits and 'qemu-nbd --list' output to recognize the bit, as
>> well as the new errno value possible when using the new flag; while
>> upcoming patches will improve the client to use the feature when
>> present, and the server to advertise support for it.

>> +++ b/nbd/server.c
>> @@ -55,6 +55,8 @@ static int system_errno_to_nbd_errno(int err)
>>           return NBD_ENOSPC;
>>       case EOVERFLOW:
>>           return NBD_EOVERFLOW;
>> +    case ENOTSUP:
>> +        return NBD_ENOTSUP;

I'm squashing this in:

diff --git i/nbd/server.c w/nbd/server.c
index b3bd08ef2953..4992148de1c4 100644
--- i/nbd/server.c
+++ w/nbd/server.c
@@ -56,6 +56,9 @@ static int system_errno_to_nbd_errno(int err)
     case EOVERFLOW:
         return NBD_EOVERFLOW;
     case ENOTSUP:
+    case EOPNOTSUPP:
         return NBD_ENOTSUP;
     case ESHUTDOWN:
         return NBD_ESHUTDOWN;

It makes no difference on Linux, but may matter on other platforms
(since POSIX says the two may be equivalent, but may also be distinct).


Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

reply via email to

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