[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH RFC v2 8/9] rbd: Rewrite the code to extract lis
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH RFC v2 8/9] rbd: Rewrite the code to extract list-valued options |
Date: |
Fri, 24 Mar 2017 14:03:19 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 |
On 03/24/2017 12:44 PM, Markus Armbruster wrote:
> We have two list-values options:
>
> * "server" is a list of InetSocketAddress. We use members "host" and
> "port", and silently ignore the rest.
>
> * "auth-supported" is a list of RbdAuthMethod. We use its only member
> "auth".
>
> Since qemu_rbd_open() takes options as a flattened QDict, options has
> keys of the form server.%d.host, server.%d.port and
> auth-supported.%d.auth, where %d counts up from zero.
>
> Rewrite to simply get the values straight from the options QDict.
>
> Fixes -drive not to crash when server.*.* are present, but
> server.*.host is absent.
>
> Permits cleaning up runtime_opts, which fixes -drive to reject several
> bogus parameters instead of silently ignoring them: host, port, auth;
> server.*.P where P isn't host; port auth-supported.*.P where P isn't
s/host; port/host or port;/
> auth.
>
> Signed-off-by: Markus Armbruster <address@hidden>
> ---
> block/rbd.c | 150
> +++++++++++++++++++++---------------------------------------
> 1 file changed, 52 insertions(+), 98 deletions(-)
>
> diff --git a/block/rbd.c b/block/rbd.c
> index 6397626..e962641 100644
> --- a/block/rbd.c
> +++ b/block/rbd.c
> @@ -13,6 +13,7 @@
>
> #include "qemu/osdep.h"
>
> +#include <rbd/librbd.h>
> #include "qapi/error.h"
> #include "qemu/error-report.h"
> #include "block/block_int.h"
> @@ -20,8 +21,6 @@
> #include "qemu/cutils.h"
> #include "qapi/qmp/qstring.h"
>
> -#include <rbd/librbd.h>
> -
Still no mention of the include cleanup in the commit message. Not the
end of the world (I don't think it's worth splitting into a separate
patch, and the lack of commit message mention isn't fatal).
> @@ -635,7 +590,6 @@ static int qemu_rbd_open(BlockDriverState *bs, QDict
> *options, int flags,
> }
>
> secretid = qemu_opt_get(opts, "password-secret");
> -
> pool = qemu_opt_get(opts, "pool");
Spurious change that should belong to an earlier commit?
Reviewed-by: Eric Blake <address@hidden>
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
- [Qemu-devel] [PATCH RFC v2 1/9] rbd: Reject -blockdev server.*.{numeric, to, ipv4, ipv6}, (continued)
- [Qemu-devel] [PATCH RFC v2 1/9] rbd: Reject -blockdev server.*.{numeric, to, ipv4, ipv6}, Markus Armbruster, 2017/03/24
- [Qemu-devel] [PATCH RFC v2 2/9] rbd: Fix to cleanly reject -drive without pool or image, Markus Armbruster, 2017/03/24
- [Qemu-devel] [PATCH RFC v2 4/9] rbd: Clean up after the previous commit, Markus Armbruster, 2017/03/24
- [Qemu-devel] [PATCH RFC v2 9/9] rbd: Reject invalid authentication methods, Markus Armbruster, 2017/03/24
- [Qemu-devel] [PATCH RFC v2 7/9] rbd: Clean up qemu_rbd_create()'s detour through QemuOpts, Markus Armbruster, 2017/03/24
- [Qemu-devel] [PATCH RFC v2 8/9] rbd: Rewrite the code to extract list-valued options, Markus Armbruster, 2017/03/24
- Re: [Qemu-devel] [PATCH RFC v2 8/9] rbd: Rewrite the code to extract list-valued options,
Eric Blake <=
- [Qemu-devel] [PATCH RFC v2 3/9] rbd: Don't limit length of parameter values, Markus Armbruster, 2017/03/24
- [Qemu-devel] [PATCH RFC v2 5/9] rbd: Don't accept -drive driver=rbd, keyvalue-pairs=..., Markus Armbruster, 2017/03/24
- [Qemu-devel] [PATCH RFC v2 6/9] rbd: Clean up runtime_opts, fix -drive to reject filename, Markus Armbruster, 2017/03/24