[PATCH 44/52] migration/rdma: Silence qemu_rdma_resolve_host()

Markus Armbruster posted 52 patches 11 months, 3 weeks ago
Maintainers: Juan Quintela <quintela@redhat.com>, Peter Xu <peterx@redhat.com>, Leonardo Bras <leobras@redhat.com>
There is a newer version of this series
[PATCH 44/52] migration/rdma: Silence qemu_rdma_resolve_host()
Posted by Markus Armbruster 11 months, 3 weeks ago
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_resolve_host() violates this principle: it calls
error_report().

Clean this up: drop error_report().

Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
 migration/rdma.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/migration/rdma.c b/migration/rdma.c
index 41f0ae4ddb..0e365db06a 100644
--- a/migration/rdma.c
+++ b/migration/rdma.c
@@ -1003,7 +1003,6 @@ route:
         error_setg(errp,
                    "RDMA ERROR: result not equal to event_addr_resolved %s",
                    rdma_event_str(cm_event->event));
-        error_report("rdma_resolve_addr");
         rdma_ack_cm_event(cm_event);
         goto err_resolve_get_addr;
     }
-- 
2.41.0
Re: [PATCH 44/52] migration/rdma: Silence qemu_rdma_resolve_host()
Posted by Zhijian Li (Fujitsu) 11 months, 2 weeks ago

On 18/09/2023 22:41, 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_resolve_host() violates this principle: it calls
> error_report().
> 
> Clean this up: drop error_report().
> 
> Signed-off-by: Markus Armbruster <armbru@redhat.com>

Reviewed-by: Li Zhijian <lizhijian@fujitsu.com>


> ---
>   migration/rdma.c | 1 -
>   1 file changed, 1 deletion(-)
> 
> diff --git a/migration/rdma.c b/migration/rdma.c
> index 41f0ae4ddb..0e365db06a 100644
> --- a/migration/rdma.c
> +++ b/migration/rdma.c
> @@ -1003,7 +1003,6 @@ route:
>           error_setg(errp,
>                      "RDMA ERROR: result not equal to event_addr_resolved %s",
>                      rdma_event_str(cm_event->event));
> -        error_report("rdma_resolve_addr");
>           rdma_ack_cm_event(cm_event);
>           goto err_resolve_get_addr;
>       }