* [PATCH v2 0/2] block: Minor vhost-user-blk fixes
@ 2021-12-23 10:14 Philippe Mathieu-Daudé
2021-12-23 10:14 ` [PATCH v2 1/2] qemu-storage-daemon: Add vhost-user-blk help Philippe Mathieu-Daudé
2021-12-23 10:14 ` [PATCH v2 2/2] qapi/block: Restrict vhost-user-blk to CONFIG_VHOST_USER_BLK_SERVER Philippe Mathieu-Daudé
0 siblings, 2 replies; 6+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-12-23 10:14 UTC (permalink / raw)
To: qemu-devel
Cc: Kevin Wolf, qemu-block, Eric Blake, Markus Armbruster,
Stefan Hajnoczi, Philippe Mathieu-Daudé
- Add vhost-user-blk help to qemu-storage-daemon,
- Do not list vhost-user-blk in BlockExportType when
CONFIG_VHOST_USER_BLK_SERVER is disabled.
Since v1:
- Reword patch 2 description (Markus)
- Fix BlockExportOptions enum build failure (Markus)
Philippe Mathieu-Daudé (2):
qemu-storage-daemon: Add vhost-user-blk help
qapi/block: Restrict vhost-user-blk to CONFIG_VHOST_USER_BLK_SERVER
qapi/block-export.json | 6 ++++--
storage-daemon/qemu-storage-daemon.c | 13 +++++++++++++
2 files changed, 17 insertions(+), 2 deletions(-)
--
2.33.1
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v2 1/2] qemu-storage-daemon: Add vhost-user-blk help
2021-12-23 10:14 [PATCH v2 0/2] block: Minor vhost-user-blk fixes Philippe Mathieu-Daudé
@ 2021-12-23 10:14 ` Philippe Mathieu-Daudé
2022-01-06 22:15 ` Eric Blake
2021-12-23 10:14 ` [PATCH v2 2/2] qapi/block: Restrict vhost-user-blk to CONFIG_VHOST_USER_BLK_SERVER Philippe Mathieu-Daudé
1 sibling, 1 reply; 6+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-12-23 10:14 UTC (permalink / raw)
To: qemu-devel
Cc: Kevin Wolf, Qing Wang, qemu-block, Eric Blake, Markus Armbruster,
Stefan Hajnoczi, Philippe Mathieu-Daudé
Add missing vhost-user-blk help:
$ qemu-storage-daemon -h
...
--export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,
addr.type=unix,addr.path=<socket-path>[,writable=on|off]
[,logical-block-size=<block-size>][,num-queues=<num-queues>]
export the specified block node as a
vhosts-user-blk device over UNIX domain socket
--export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,
fd,addr.str=<fd>[,writable=on|off]
[,logical-block-size=<block-size>][,num-queues=<num-queues>]
export the specified block node as a
vhosts-user-blk device over file descriptor
...
Fixes: 90fc91d50b7 ("convert vhost-user-blk server to block export API")
Reported-by: Qing Wang <qinwang@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
storage-daemon/qemu-storage-daemon.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/storage-daemon/qemu-storage-daemon.c b/storage-daemon/qemu-storage-daemon.c
index 52cf17e8ace..0c19e128e3f 100644
--- a/storage-daemon/qemu-storage-daemon.c
+++ b/storage-daemon/qemu-storage-daemon.c
@@ -104,6 +104,19 @@ static void help(void)
" export the specified block node over FUSE\n"
"\n"
#endif /* CONFIG_FUSE */
+#ifdef CONFIG_VHOST_USER_BLK_SERVER
+" --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,\n"
+" addr.type=unix,addr.path=<socket-path>[,writable=on|off]\n"
+" [,logical-block-size=<block-size>][,num-queues=<num-queues>]\n"
+" export the specified block node as a\n"
+" vhosts-user-blk device over UNIX domain socket\n"
+" --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,\n"
+" fd,addr.str=<fd>[,writable=on|off]\n"
+" [,logical-block-size=<block-size>][,num-queues=<num-queues>]\n"
+" export the specified block node as a\n"
+" vhosts-user-blk device over file descriptor\n"
+"\n"
+#endif /* CONFIG_VHOST_USER_BLK_SERVER */
" --monitor [chardev=]name[,mode=control][,pretty[=on|off]]\n"
" configure a QMP monitor\n"
"\n"
--
2.33.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH v2 2/2] qapi/block: Restrict vhost-user-blk to CONFIG_VHOST_USER_BLK_SERVER
2021-12-23 10:14 [PATCH v2 0/2] block: Minor vhost-user-blk fixes Philippe Mathieu-Daudé
2021-12-23 10:14 ` [PATCH v2 1/2] qemu-storage-daemon: Add vhost-user-blk help Philippe Mathieu-Daudé
@ 2021-12-23 10:14 ` Philippe Mathieu-Daudé
2022-01-14 10:56 ` Markus Armbruster
1 sibling, 1 reply; 6+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-12-23 10:14 UTC (permalink / raw)
To: qemu-devel
Cc: Kevin Wolf, qemu-block, Eric Blake, Markus Armbruster,
Stefan Hajnoczi, Philippe Mathieu-Daudé
When building QEMU with --disable-vhost-user and using introspection,
query-qmp-schema lists vhost-user-blk even though it's not actually
available:
{ "execute": "query-qmp-schema" }
{
"return": [
...
{
"name": "312",
"members": [
{
"name": "nbd"
},
{
"name": "vhost-user-blk"
}
],
"meta-type": "enum",
"values": [
"nbd",
"vhost-user-blk"
]
},
Restrict vhost-user-blk in BlockExportType when
CONFIG_VHOST_USER_BLK_SERVER is disabled, so it
doesn't end listed by query-qmp-schema.
Fixes: 90fc91d50b7 ("convert vhost-user-blk server to block export API")
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
v2: Reword + restrict BlockExportOptions union (armbru)
---
qapi/block-export.json | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/qapi/block-export.json b/qapi/block-export.json
index c1b92ce1c1c..f9ce79a974b 100644
--- a/qapi/block-export.json
+++ b/qapi/block-export.json
@@ -277,7 +277,8 @@
# Since: 4.2
##
{ 'enum': 'BlockExportType',
- 'data': [ 'nbd', 'vhost-user-blk',
+ 'data': [ 'nbd',
+ { 'name': 'vhost-user-blk', 'if': 'CONFIG_VHOST_USER_BLK_SERVER' },
{ 'name': 'fuse', 'if': 'CONFIG_FUSE' } ] }
##
@@ -319,7 +320,8 @@
'discriminator': 'type',
'data': {
'nbd': 'BlockExportOptionsNbd',
- 'vhost-user-blk': 'BlockExportOptionsVhostUserBlk',
+ 'vhost-user-blk': { 'type': 'BlockExportOptionsVhostUserBlk',
+ 'if': 'CONFIG_VHOST_USER_BLK_SERVER' },
'fuse': { 'type': 'BlockExportOptionsFuse',
'if': 'CONFIG_FUSE' }
} }
--
2.33.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v2 1/2] qemu-storage-daemon: Add vhost-user-blk help
2021-12-23 10:14 ` [PATCH v2 1/2] qemu-storage-daemon: Add vhost-user-blk help Philippe Mathieu-Daudé
@ 2022-01-06 22:15 ` Eric Blake
2022-01-07 10:47 ` Philippe Mathieu-Daudé
0 siblings, 1 reply; 6+ messages in thread
From: Eric Blake @ 2022-01-06 22:15 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Kevin Wolf, Qing Wang, qemu-block, qemu-devel, Markus Armbruster,
Stefan Hajnoczi
On Thu, Dec 23, 2021 at 11:14:25AM +0100, Philippe Mathieu-Daudé wrote:
> Add missing vhost-user-blk help:
>
> $ qemu-storage-daemon -h
> ...
> --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,
> addr.type=unix,addr.path=<socket-path>[,writable=on|off]
> [,logical-block-size=<block-size>][,num-queues=<num-queues>]
> export the specified block node as a
> vhosts-user-blk device over UNIX domain socket
Why 'vhosts-' here instead of 'vhost'?
> --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,
> fd,addr.str=<fd>[,writable=on|off]
> [,logical-block-size=<block-size>][,num-queues=<num-queues>]
> export the specified block node as a
> vhosts-user-blk device over file descriptor
here too.
> ...
>
> Fixes: 90fc91d50b7 ("convert vhost-user-blk server to block export API")
> Reported-by: Qing Wang <qinwang@redhat.com>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> storage-daemon/qemu-storage-daemon.c | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
> diff --git a/storage-daemon/qemu-storage-daemon.c b/storage-daemon/qemu-storage-daemon.c
> index 52cf17e8ace..0c19e128e3f 100644
> --- a/storage-daemon/qemu-storage-daemon.c
> +++ b/storage-daemon/qemu-storage-daemon.c
> @@ -104,6 +104,19 @@ static void help(void)
> " export the specified block node over FUSE\n"
> "\n"
> #endif /* CONFIG_FUSE */
> +#ifdef CONFIG_VHOST_USER_BLK_SERVER
> +" --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,\n"
> +" addr.type=unix,addr.path=<socket-path>[,writable=on|off]\n"
> +" [,logical-block-size=<block-size>][,num-queues=<num-queues>]\n"
> +" export the specified block node as a\n"
> +" vhosts-user-blk device over UNIX domain socket\n"
This...
> +" --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,\n"
> +" fd,addr.str=<fd>[,writable=on|off]\n"
> +" [,logical-block-size=<block-size>][,num-queues=<num-queues>]\n"
> +" export the specified block node as a\n"
> +" vhosts-user-blk device over file descriptor\n"
...and this line would need the same tweak.
If you agree that it's a typo, then let's fix it, and you can have
Reviewed-by: Eric Blake <eblake@redhat.com>
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3266
Virtualization: qemu.org | libvirt.org
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2 1/2] qemu-storage-daemon: Add vhost-user-blk help
2022-01-06 22:15 ` Eric Blake
@ 2022-01-07 10:47 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 6+ messages in thread
From: Philippe Mathieu-Daudé @ 2022-01-07 10:47 UTC (permalink / raw)
To: Eric Blake
Cc: Kevin Wolf, Qing Wang, qemu-block, qemu-devel, Markus Armbruster,
Stefan Hajnoczi
On 1/6/22 23:15, Eric Blake wrote:
> On Thu, Dec 23, 2021 at 11:14:25AM +0100, Philippe Mathieu-Daudé wrote:
>> Add missing vhost-user-blk help:
>>
>> $ qemu-storage-daemon -h
>> ...
>> --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,
>> addr.type=unix,addr.path=<socket-path>[,writable=on|off]
>> [,logical-block-size=<block-size>][,num-queues=<num-queues>]
>> export the specified block node as a
>> vhosts-user-blk device over UNIX domain socket
>
> Why 'vhosts-' here instead of 'vhost'?
Oops, I copy/pasted from qemu-storage-daemon.rst.
>> --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,
>> fd,addr.str=<fd>[,writable=on|off]
>> [,logical-block-size=<block-size>][,num-queues=<num-queues>]
>> export the specified block node as a
>> vhosts-user-blk device over file descriptor
>
> here too.
>
>> ...
>>
>> Fixes: 90fc91d50b7 ("convert vhost-user-blk server to block export API")
>> Reported-by: Qing Wang <qinwang@redhat.com>
>> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>> ---
>> storage-daemon/qemu-storage-daemon.c | 13 +++++++++++++
>> 1 file changed, 13 insertions(+)
>>
>> diff --git a/storage-daemon/qemu-storage-daemon.c b/storage-daemon/qemu-storage-daemon.c
>> index 52cf17e8ace..0c19e128e3f 100644
>> --- a/storage-daemon/qemu-storage-daemon.c
>> +++ b/storage-daemon/qemu-storage-daemon.c
>> @@ -104,6 +104,19 @@ static void help(void)
>> " export the specified block node over FUSE\n"
>> "\n"
>> #endif /* CONFIG_FUSE */
>> +#ifdef CONFIG_VHOST_USER_BLK_SERVER
>> +" --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,\n"
>> +" addr.type=unix,addr.path=<socket-path>[,writable=on|off]\n"
>> +" [,logical-block-size=<block-size>][,num-queues=<num-queues>]\n"
>> +" export the specified block node as a\n"
>> +" vhosts-user-blk device over UNIX domain socket\n"
>
> This...
>
>> +" --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,\n"
>> +" fd,addr.str=<fd>[,writable=on|off]\n"
>> +" [,logical-block-size=<block-size>][,num-queues=<num-queues>]\n"
>> +" export the specified block node as a\n"
>> +" vhosts-user-blk device over file descriptor\n"
>
> ...and this line would need the same tweak.
>
> If you agree that it's a typo, then let's fix it, and you can have
>
> Reviewed-by: Eric Blake <eblake@redhat.com>
Yes (I will also update qemu-storage-daemon.rst). Thank you!
Phil.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2 2/2] qapi/block: Restrict vhost-user-blk to CONFIG_VHOST_USER_BLK_SERVER
2021-12-23 10:14 ` [PATCH v2 2/2] qapi/block: Restrict vhost-user-blk to CONFIG_VHOST_USER_BLK_SERVER Philippe Mathieu-Daudé
@ 2022-01-14 10:56 ` Markus Armbruster
0 siblings, 0 replies; 6+ messages in thread
From: Markus Armbruster @ 2022-01-14 10:56 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Kevin Wolf, qemu-block, Eric Blake, qemu-devel, Stefan Hajnoczi
Philippe Mathieu-Daudé <philmd@redhat.com> writes:
> When building QEMU with --disable-vhost-user and using introspection,
> query-qmp-schema lists vhost-user-blk even though it's not actually
> available:
>
> { "execute": "query-qmp-schema" }
> {
> "return": [
> ...
> {
> "name": "312",
> "members": [
> {
> "name": "nbd"
> },
> {
> "name": "vhost-user-blk"
> }
> ],
> "meta-type": "enum",
> "values": [
> "nbd",
> "vhost-user-blk"
> ]
> },
>
> Restrict vhost-user-blk in BlockExportType when
> CONFIG_VHOST_USER_BLK_SERVER is disabled, so it
> doesn't end listed by query-qmp-schema.
>
> Fixes: 90fc91d50b7 ("convert vhost-user-blk server to block export API")
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> v2: Reword + restrict BlockExportOptions union (armbru)
> ---
> qapi/block-export.json | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/qapi/block-export.json b/qapi/block-export.json
> index c1b92ce1c1c..f9ce79a974b 100644
> --- a/qapi/block-export.json
> +++ b/qapi/block-export.json
> @@ -277,7 +277,8 @@
> # Since: 4.2
> ##
> { 'enum': 'BlockExportType',
> - 'data': [ 'nbd', 'vhost-user-blk',
> + 'data': [ 'nbd',
> + { 'name': 'vhost-user-blk', 'if': 'CONFIG_VHOST_USER_BLK_SERVER' },
Please break this line like
{ 'name': 'vhost-user-blk',
'if': 'CONFIG_VHOST_USER_BLK_SERVER' },
> { 'name': 'fuse', 'if': 'CONFIG_FUSE' } ] }
>
> ##
> @@ -319,7 +320,8 @@
> 'discriminator': 'type',
> 'data': {
> 'nbd': 'BlockExportOptionsNbd',
> - 'vhost-user-blk': 'BlockExportOptionsVhostUserBlk',
> + 'vhost-user-blk': { 'type': 'BlockExportOptionsVhostUserBlk',
> + 'if': 'CONFIG_VHOST_USER_BLK_SERVER' },
> 'fuse': { 'type': 'BlockExportOptionsFuse',
> 'if': 'CONFIG_FUSE' }
> } }
Acked-by: Markus Armbruster <armbru@redhat.com>
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-01-14 11:10 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-23 10:14 [PATCH v2 0/2] block: Minor vhost-user-blk fixes Philippe Mathieu-Daudé
2021-12-23 10:14 ` [PATCH v2 1/2] qemu-storage-daemon: Add vhost-user-blk help Philippe Mathieu-Daudé
2022-01-06 22:15 ` Eric Blake
2022-01-07 10:47 ` Philippe Mathieu-Daudé
2021-12-23 10:14 ` [PATCH v2 2/2] qapi/block: Restrict vhost-user-blk to CONFIG_VHOST_USER_BLK_SERVER Philippe Mathieu-Daudé
2022-01-14 10:56 ` Markus Armbruster
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.