[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 50/52] migration/rdma: Silence qemu_rdma_cleanup()
From: |
Markus Armbruster |
Subject: |
Re: [PATCH 50/52] migration/rdma: Silence qemu_rdma_cleanup() |
Date: |
Wed, 27 Sep 2023 07:30:42 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) |
"Zhijian Li (Fujitsu)" <lizhijian@fujitsu.com> writes:
> On 26/09/2023 19:52, Markus Armbruster wrote:
>> "Zhijian Li (Fujitsu)" <lizhijian@fujitsu.com> writes:
>>
>>> On 18/09/2023 22:42, Markus Armbruster wrote:
>>>> Functions that use an Error **errp parameter to return errors should
>>>> not also report them to the user, because reporting is the caller's
>>>> job. When the caller does, the error is reported twice. When it
>>>> doesn't (because it recovered from the error), there is no error to
>>>> report, i.e. the report is bogus.
>>>>
>>>> qemu_rdma_source_init(), qemu_rdma_connect(),
>>>> rdma_start_incoming_migration(), and rdma_start_outgoing_migration()
>>>> violate this principle: they call error_report() via
>>>> qemu_rdma_cleanup().
>>>>
>>>> Moreover, qemu_rdma_cleanup() can't fail. It is called on error
>>>> paths, and QIOChannel close and finalization. Are the conditions it
>>>> reports really errors? I doubt it.
>>>
>>> I'm not very sure, it's fine if it's call from the error path. but when
>>> the caller is migration_cancle from HMP/QMP, shall we report something more
>>> though we know QEMU can recover.
>>>
>>> maybe change to warning etc...
>>
>> The part I'm sure about is that reporting an error to the user is wrong
>> when we actually recover from the error. Which qemu_rdma_cleanup()
>> does.
>
> Yes, i have no doubt about this.
>
>
>>
>> I'm not sure whether the (complicated!) condition that triggers
>> qemu_rdma_cleanup()'s ill-advised error report needs to be reported in
>> some other form. The remainder of the function ignores failure...
>>
>> If you think we should to downgrade the error to a warning, and no
>> maintainer disagrees, then I'll downgrade. Do you?
>
> Yes, I'd like downgrade error to a warning.
Got it, thanks!
- [PATCH 24/52] migration/rdma: Return -1 instead of negative errno code, (continued)
[PATCH 36/52] migration/rdma: Convert qemu_rdma_exchange_get_response() to Error, Markus Armbruster, 2023/09/18
[PATCH 39/52] migration/rdma: Convert qemu_rdma_write_one() to Error, Markus Armbruster, 2023/09/18
Re: [PATCH 39/52] migration/rdma: Convert qemu_rdma_write_one() to Error, Markus Armbruster, 2023/09/26