From: Max Reitz <mreitz@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: Kevin Wolf <kwolf@redhat.com>,
QEMU Developers <qemu-devel@nongnu.org>,
Qemu-block <qemu-block@nongnu.org>
Subject: Re: [PULL 18/31] block/core: add generic infrastructure for x-blockdev-amend qmp command
Date: Fri, 10 Jul 2020 11:54:11 +0200 [thread overview]
Message-ID: <0ee8065c-2004-e188-4918-7f8c9017fb47@redhat.com> (raw)
In-Reply-To: <CAFEAcA_2ysWK=fs4E422uVBjRe6qT6cAec5Haahb-uuZpafNOg@mail.gmail.com>
[-- Attachment #1.1: Type: text/plain, Size: 1728 bytes --]
On 09.07.20 17:09, Peter Maydell wrote:
> On Mon, 6 Jul 2020 at 11:05, Max Reitz <mreitz@redhat.com> wrote:
>>
>> From: Maxim Levitsky <mlevitsk@redhat.com>
>>
>> blockdev-amend will be used similiar to blockdev-create
>> to allow on the fly changes of the structure of the format based block devices.
>>
>> Current plan is to first support encryption keyslot management for luks
>> based formats (raw and embedded in qcow2)
>>
>> Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
>> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
>> Message-Id: <20200608094030.670121-12-mlevitsk@redhat.com>
>> Signed-off-by: Max Reitz <mreitz@redhat.com>
>
> Hi; Coverity reports a possible issue with this function
> (CID 1430268):
Thanks for the heads-up, I’ve sent a patch (“block/amend: Check whether
the node exists”).
>> +void qmp_x_blockdev_amend(const char *job_id,
>> + const char *node_name,
>> + BlockdevAmendOptions *options,
>> + bool has_force,
>> + bool force,
>> + Error **errp)
>> +{
>> + BlockdevAmendJob *s;
>> + const char *fmt = BlockdevDriver_str(options->driver);
>> + BlockDriver *drv = bdrv_find_format(fmt);
>> + BlockDriverState *bs = bdrv_find_node(node_name);
>
> bdrv_find_node() can return NULL (we check for this
> in almost all callsites)...
>
>> + if (bs->drv != drv) {
>
> ...but here we dereference it unconditionally.
>
>> + error_setg(errp,
>> + "x-blockdev-amend doesn't support changing the block driver");
>> + return;
>> + }
>
> thanks
> -- PMM
>
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
next prev parent reply other threads:[~2020-07-10 9:55 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-06 10:04 [PULL 00/31] Block patches Max Reitz
2020-07-06 10:04 ` [PULL 01/31] block/block-copy: block_copy_dirty_clusters: fix failure check Max Reitz
2020-07-06 10:04 ` [PULL 02/31] qcow2: Fix preallocation on images with unaligned sizes Max Reitz
2020-07-06 10:04 ` [PULL 03/31] iotests: Make _filter_img_create more active Max Reitz
2020-07-10 15:48 ` John Snow
2020-07-06 10:04 ` [PULL 04/31] iotests: filter few more luks specific create options Max Reitz
2020-07-06 10:04 ` [PULL 05/31] iotests/common.rc: Add _require_working_luks Max Reitz
2020-07-06 10:04 ` [PULL 06/31] iotests.py: Add qemu_img_pipe_and_status() Max Reitz
2020-07-06 10:04 ` [PULL 07/31] iotests.py: Add (verify|has)_working_luks() Max Reitz
2020-07-06 10:04 ` [PULL 08/31] iotests: Check whether luks works Max Reitz
2020-07-06 10:04 ` [PULL 09/31] qcrypto/core: add generic infrastructure for crypto options amendment Max Reitz
2020-07-06 10:04 ` [PULL 10/31] qcrypto/luks: implement encryption key management Max Reitz
2020-07-06 10:04 ` [PULL 11/31] block/amend: add 'force' option Max Reitz
2020-07-06 10:04 ` [PULL 12/31] block/amend: separate amend and create options for qemu-img Max Reitz
2020-07-06 10:04 ` [PULL 13/31] block/amend: refactor qcow2 amend options Max Reitz
2020-07-06 10:04 ` [PULL 14/31] block/crypto: rename two functions Max Reitz
2020-07-06 10:04 ` [PULL 15/31] block/crypto: implement the encryption key management Max Reitz
2020-07-06 10:04 ` [PULL 16/31] block/qcow2: extend qemu-img amend interface with crypto options Max Reitz
2020-07-06 10:04 ` [PULL 17/31] iotests: qemu-img tests for luks key management Max Reitz
2020-07-06 10:04 ` [PULL 18/31] block/core: add generic infrastructure for x-blockdev-amend qmp command Max Reitz
2020-07-09 15:09 ` Peter Maydell
2020-07-10 9:54 ` Max Reitz [this message]
2020-07-06 10:04 ` [PULL 19/31] block/crypto: implement blockdev-amend Max Reitz
2020-07-06 10:04 ` [PULL 20/31] block/qcow2: " Max Reitz
2020-07-06 10:04 ` [PULL 21/31] iotests: add tests for blockdev-amend Max Reitz
2020-07-06 10:04 ` [PULL 22/31] qemu-img: convert: don't use unallocated_blocks_are_zero Max Reitz
2020-07-06 10:04 ` [PULL 23/31] block: inline bdrv_unallocated_blocks_are_zero() Max Reitz
2020-07-06 10:04 ` [PULL 24/31] block/vdi: return ZERO block-status when appropriate Max Reitz
2020-07-06 10:04 ` [PULL 25/31] block/vpc: " Max Reitz
2020-07-06 10:04 ` [PULL 26/31] block/crypto: drop unallocated_blocks_are_zero Max Reitz
2020-07-06 10:04 ` [PULL 27/31] block/iscsi: " Max Reitz
2020-07-06 10:04 ` [PULL 28/31] block/file-posix: " Max Reitz
2020-07-06 10:04 ` [PULL 29/31] block/vhdx: " Max Reitz
2020-07-06 10:04 ` [PULL 30/31] block: " Max Reitz
2020-07-06 10:04 ` [PULL 31/31] qed: Simplify backing reads Max Reitz
2020-07-06 10:31 ` [PULL 00/31] Block patches no-reply
2020-07-07 20:40 ` Peter Maydell
2020-07-08 15:11 ` Maxim Levitsky
2020-07-08 15:45 ` Kevin Wolf
2020-07-08 15:50 ` Maxim Levitsky
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=0ee8065c-2004-e188-4918-7f8c9017fb47@redhat.com \
--to=mreitz@redhat.com \
--cc=kwolf@redhat.com \
--cc=peter.maydell@linaro.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).