From: Markus Armbruster <armbru@redhat.com>
To: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Cc: Kevin Wolf <kwolf@redhat.com>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
"qemu-block@nongnu.org" <qemu-block@nongnu.org>,
Max Reitz <mreitz@redhat.com>
Subject: Re: [PATCH v8 21/21] nbd: assert that Error** is not NULL in nbd_iter_channel_error
Date: Tue, 10 Dec 2019 10:05:48 +0100 [thread overview]
Message-ID: <87a780mtxv.fsf@dusky.pond.sub.org> (raw)
In-Reply-To: <6d55367c-42a3-3622-a483-d997b428796d@virtuozzo.com> (Vladimir Sementsov-Ogievskiy's message of "Fri, 6 Dec 2019 18:19:36 +0000")
Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> writes:
> 06.12.2019 18:58, Markus Armbruster wrote:
>> Eric Blake <eblake@redhat.com> writes:
>>
>>> On 12/5/19 11:46 AM, Vladimir Sementsov-Ogievskiy wrote:
>>>> The local_err parameter is not here to return information about
>>>> nbd_iter_channel_error failure. Instead it's assumed to be filled when
>>>> passed to the function. This is already stressed by its name
>>>> (local_err, instead of classic errp). Stress it additionally by
>>>> assertion.
>>>>
>>>> Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
>>>> ---
>>>> block/nbd.c | 1 +
>>>> 1 file changed, 1 insertion(+)
>>>
>>> Our timing resulted in crossed mails - I was replying to v7 when this
>>> landed, and my reply there is still relevant (namely, a better commit
>>> message is needed, but the code gets my R-b with that change).
>>
>> If v8 turns out to be fine except for commit message tweaks, I'll gladly
>> to these in my tree. Just tell me what to do in a reply to this
>> message.
>>
>
> Yes, this would be great, thanks!
>
> The only thing is your suggestion on patch 21, but it may be applied in separate (and it's actually a separate thing)
It's closer to idea than to suggestion, and it's separate.
Commit message in my tree:
nbd: assert that Error** is not NULL in nbd_iter_channel_error
All callers of nbd_iter_channel_error() pass the address of a
local_err variable, and only call this function if an error has
already occurred, using this function to propagate that error.
This is already implied by its name (local_err instead of the classic
errp), but it is worth additionally stressing this by adding an
assertion to make it part of the function contract.
The local_err parameter is not here to return information about
nbd_iter_channel_error failure. Instead it's assumed to be filled when
passed to the function. This is already stressed by its name
(local_err, instead of classic errp). Stress it additionally by
assertion.
Also:
Reviewed-by: Markus Armbruster <armbru@redhat.com>
prev parent reply other threads:[~2019-12-10 9:06 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-05 17:46 [PATCH v8 00/21] error: prepare for auto propagated local_err Vladimir Sementsov-Ogievskiy
2019-12-05 17:46 ` [PATCH v8 01/21] hw/core/loader-fit: fix freeing errp in fit_load_fdt Vladimir Sementsov-Ogievskiy
2019-12-06 7:41 ` Philippe Mathieu-Daudé
2019-12-05 17:46 ` [PATCH v8 02/21] net/net: Clean up variable shadowing in net_client_init() Vladimir Sementsov-Ogievskiy
2019-12-05 17:46 ` [PATCH v8 03/21] error: make Error **errp const where it is appropriate Vladimir Sementsov-Ogievskiy
2019-12-06 7:28 ` Philippe Mathieu-Daudé
2019-12-06 15:49 ` Markus Armbruster
2019-12-05 17:46 ` [PATCH v8 04/21] hmp: drop Error pointer indirection in hmp_handle_error Vladimir Sementsov-Ogievskiy
2019-12-06 7:29 ` Philippe Mathieu-Daudé
2019-12-05 17:46 ` [PATCH v8 05/21] vnc: drop Error pointer indirection in vnc_client_io_error Vladimir Sementsov-Ogievskiy
2019-12-06 7:30 ` Philippe Mathieu-Daudé
2019-12-05 17:46 ` [PATCH v8 06/21] qdev-monitor: well form error hint helpers Vladimir Sementsov-Ogievskiy
2019-12-05 18:17 ` Eric Blake
2019-12-05 18:18 ` Eric Blake
2019-12-06 7:31 ` Philippe Mathieu-Daudé
2019-12-06 15:53 ` Markus Armbruster
2019-12-10 7:14 ` Markus Armbruster
2019-12-05 17:46 ` [PATCH v8 07/21] ppc: well form kvmppc_hint_smt_possible error hint helper Vladimir Sementsov-Ogievskiy
2019-12-06 0:03 ` David Gibson
2019-12-10 7:19 ` Markus Armbruster
2019-12-05 17:46 ` [PATCH v8 08/21] 9pfs: well form error hint helpers Vladimir Sementsov-Ogievskiy
2019-12-10 7:29 ` Markus Armbruster
2019-12-05 17:46 ` [PATCH v8 09/21] hw/core/qdev: cleanup Error ** variables Vladimir Sementsov-Ogievskiy
2019-12-05 17:46 ` [PATCH v8 10/21] block/snapshot: rename Error ** parameter to more common errp Vladimir Sementsov-Ogievskiy
2019-12-05 17:46 ` [PATCH v8 11/21] hw/i386/amd_iommu: " Vladimir Sementsov-Ogievskiy
2019-12-06 7:36 ` Philippe Mathieu-Daudé
2019-12-05 17:46 ` [PATCH v8 12/21] qga: " Vladimir Sementsov-Ogievskiy
2019-12-06 7:37 ` Philippe Mathieu-Daudé
2019-12-06 15:55 ` Markus Armbruster
2019-12-05 17:46 ` [PATCH v8 13/21] monitor/qmp-cmds: " Vladimir Sementsov-Ogievskiy
2019-12-06 7:37 ` Philippe Mathieu-Daudé
2019-12-05 17:46 ` [PATCH v8 14/21] hw/s390x: " Vladimir Sementsov-Ogievskiy
2019-12-06 7:37 ` Philippe Mathieu-Daudé
2019-12-06 10:16 ` David Hildenbrand
2019-12-05 17:46 ` [PATCH v8 15/21] hw/sd: drop extra whitespace in sdhci_sysbus_realize() header Vladimir Sementsov-Ogievskiy
2019-12-06 7:38 ` Philippe Mathieu-Daudé
2019-12-05 17:46 ` [PATCH v8 16/21] hw/tpm: rename Error ** parameter to more common errp Vladimir Sementsov-Ogievskiy
2019-12-06 7:38 ` Philippe Mathieu-Daudé
2019-12-05 17:46 ` [PATCH v8 17/21] hw/usb: " Vladimir Sementsov-Ogievskiy
2019-12-06 7:38 ` Philippe Mathieu-Daudé
2019-12-06 10:19 ` Vladimir Sementsov-Ogievskiy
2019-12-05 17:46 ` [PATCH v8 18/21] include/qom/object.h: " Vladimir Sementsov-Ogievskiy
2019-12-05 17:46 ` [PATCH v8 19/21] backends/cryptodev: drop local_err from cryptodev_backend_complete() Vladimir Sementsov-Ogievskiy
2019-12-05 17:46 ` [PATCH v8 20/21] hw/vfio/ap: drop local_err from vfio_ap_realize Vladimir Sementsov-Ogievskiy
2019-12-05 17:46 ` [PATCH v8 21/21] nbd: assert that Error** is not NULL in nbd_iter_channel_error Vladimir Sementsov-Ogievskiy
2019-12-05 17:51 ` Eric Blake
2019-12-06 15:58 ` Markus Armbruster
2019-12-06 18:19 ` Vladimir Sementsov-Ogievskiy
2019-12-10 9:05 ` Markus Armbruster [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=87a780mtxv.fsf@dusky.pond.sub.org \
--to=armbru@redhat.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=vsementsov@virtuozzo.com \
/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.