[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 09/15] migration: Unify failure check for migrate_add_blocker()
From: |
Markus Armbruster |
Subject: |
[PULL 09/15] migration: Unify failure check for migrate_add_blocker() |
Date: |
Fri, 27 Aug 2021 06:50:38 +0200 |
Most callers check the return value. Some check whether it set an
error. Functionally equivalent, but the former tends to be easier on
the eyes, so do that everywhere.
Prior art: commit c6ecec43b2 "qemu-option: Check return value instead
of @err where convenient".
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20210720125408.387910-10-armbru@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
---
backends/tpm/tpm_emulator.c | 3 +--
hw/virtio/vhost.c | 2 +-
target/i386/kvm/kvm.c | 6 +++---
target/i386/nvmm/nvmm-all.c | 3 +--
target/i386/whpx/whpx-all.c | 3 +--
5 files changed, 7 insertions(+), 10 deletions(-)
diff --git a/backends/tpm/tpm_emulator.c b/backends/tpm/tpm_emulator.c
index e5f1063ab6..f8095d23d5 100644
--- a/backends/tpm/tpm_emulator.c
+++ b/backends/tpm/tpm_emulator.c
@@ -492,8 +492,7 @@ static int tpm_emulator_block_migration(TPMEmulator
*tpm_emu)
error_setg(&tpm_emu->migration_blocker,
"Migration disabled: TPM emulator does not support "
"migration");
- migrate_add_blocker(tpm_emu->migration_blocker, &err);
- if (err) {
+ if (migrate_add_blocker(tpm_emu->migration_blocker, &err) < 0) {
error_report_err(err);
error_free(tpm_emu->migration_blocker);
tpm_emu->migration_blocker = NULL;
diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c
index e8f85a5d2d..dbbc6b6915 100644
--- a/hw/virtio/vhost.c
+++ b/hw/virtio/vhost.c
@@ -1372,7 +1372,7 @@ int vhost_dev_init(struct vhost_dev *hdev, void *opaque,
if (hdev->migration_blocker != NULL) {
r = migrate_add_blocker(hdev->migration_blocker, errp);
- if (*errp) {
+ if (r < 0) {
error_free(hdev->migration_blocker);
goto fail_busyloop;
}
diff --git a/target/i386/kvm/kvm.c b/target/i386/kvm/kvm.c
index 57aed525b5..500d2e0e68 100644
--- a/target/i386/kvm/kvm.c
+++ b/target/i386/kvm/kvm.c
@@ -1435,7 +1435,7 @@ static int hyperv_init_vcpu(X86CPU *cpu)
"'hv-passthrough' CPU flag prevents migration, use explicit"
" set of hv-* flags instead");
ret = migrate_add_blocker(hv_passthrough_mig_blocker, &local_err);
- if (local_err) {
+ if (ret < 0) {
error_report_err(local_err);
return ret;
}
@@ -1449,7 +1449,7 @@ static int hyperv_init_vcpu(X86CPU *cpu)
" make sure SMT is disabled and/or that vCPUs are properly"
" pinned)");
ret = migrate_add_blocker(hv_no_nonarch_cs_mig_blocker, &local_err);
- if (local_err) {
+ if (ret < 0) {
error_report_err(local_err);
return ret;
}
@@ -1888,7 +1888,7 @@ int kvm_arch_init_vcpu(CPUState *cs)
"State blocked by non-migratable CPU device"
" (invtsc flag)");
r = migrate_add_blocker(invtsc_mig_blocker, &local_err);
- if (local_err) {
+ if (r < 0) {
error_report_err(local_err);
return r;
}
diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c
index 7bb0d9e30e..28dee4c5ee 100644
--- a/target/i386/nvmm/nvmm-all.c
+++ b/target/i386/nvmm/nvmm-all.c
@@ -926,8 +926,7 @@ nvmm_init_vcpu(CPUState *cpu)
error_setg(&nvmm_migration_blocker,
"NVMM: Migration not supported");
- (void)migrate_add_blocker(nvmm_migration_blocker, &local_error);
- if (local_error) {
+ if (migrate_add_blocker(nvmm_migration_blocker, &local_error) < 0) {
error_report_err(local_error);
error_free(nvmm_migration_blocker);
return -EINVAL;
diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c
index cc8c0b984b..3e925b9da7 100644
--- a/target/i386/whpx/whpx-all.c
+++ b/target/i386/whpx/whpx-all.c
@@ -1346,8 +1346,7 @@ int whpx_init_vcpu(CPUState *cpu)
"State blocked due to non-migratable CPUID feature support,"
"dirty memory tracking support, and XSAVE/XRSTOR support");
- (void)migrate_add_blocker(whpx_migration_blocker, &local_error);
- if (local_error) {
+ if (migrate_add_blocker(whpx_migration_blocker, &local_error) < 0) {
error_report_err(local_error);
error_free(whpx_migration_blocker);
ret = -EINVAL;
--
2.31.1
- [PULL 00/15] Error reporting patches for 2021-08-26, Markus Armbruster, 2021/08/27
- [PULL 06/15] i386: Never free migration blocker objects instead of sometimes, Markus Armbruster, 2021/08/27
- [PULL 03/15] spapr: Explain purpose of ->fwnmi_migration_blocker more clearly, Markus Armbruster, 2021/08/27
- [PULL 10/15] migration: Handle migration_incoming_setup() errors consistently, Markus Armbruster, 2021/08/27
- [PULL 09/15] migration: Unify failure check for migrate_add_blocker(),
Markus Armbruster <=
- [PULL 15/15] vl: Clean up -smp error handling, Markus Armbruster, 2021/08/27
- [PULL 02/15] spapr: Plug memory leak when we can't add a migration blocker, Markus Armbruster, 2021/08/27
- [PULL 11/15] microvm: Drop dead error handling in microvm_machine_state_init(), Markus Armbruster, 2021/08/27
- [PULL 05/15] vhost-scsi: Plug memory leak on migrate_add_blocker() failure, Markus Armbruster, 2021/08/27
- [PULL 04/15] multi-process: Fix pci_proxy_dev_realize() error handling, Markus Armbruster, 2021/08/27
- [PULL 07/15] vfio: Avoid error_propagate() after migrate_add_blocker(), Markus Armbruster, 2021/08/27
- [PULL 08/15] whpx nvmm: Drop useless migrate_del_blocker(), Markus Armbruster, 2021/08/27
- [PULL 14/15] Remove superfluous ERRP_GUARD(), Markus Armbruster, 2021/08/27