From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630040268684707.1392007760466; Thu, 26 Aug 2021 21:57:48 -0700 (PDT) Received: from localhost ([::1]:47378 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTw3-0005qi-Ii for importer@patchew.org; Fri, 27 Aug 2021 00:57:47 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60758) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpg-0000Tt-8T for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:12 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:39066) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpe-0001Dc-2i for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:11 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-602-B-4AyzrWPNGYHuFjTxUxcw-1; Fri, 27 Aug 2021 00:51:07 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id B7075640A2; Fri, 27 Aug 2021 04:51:06 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id E43B960C5F; Fri, 27 Aug 2021 04:50:45 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 7FDC511380AA; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039869; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=9bf6zCX1ixbXXVgnh5SbDX4tuLDD8mJ1Fj6uq0eMqyI=; b=Vlf9nWloUG4UeyLwH9qjYQ2QWQhIE0JjvPI555H8aWmC57q6cC7JX8c/YFTQCTxBoNqpsb eNj0nC2qT3/oxA/khiJS7FPwTt8prj/1iHrrfrMq+T4tV+4Z1kY40dDMo3O0792ylG8MRj p6A6y8EHEsa9A22xDlVSTbAJ/OXDCwM= X-MC-Unique: B-4AyzrWPNGYHuFjTxUxcw-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 01/15] error: Use error_fatal to simplify obvious fatal errors (again) Date: Fri, 27 Aug 2021 06:50:30 +0200 Message-Id: <20210827045044.388748-2-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, Thomas Huth , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= , Juan Quintela , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , "Michael S . Tsirkin" , Peter Xu , Gerd Hoffmann , Stefan Hajnoczi , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Cornelia Huck , Paolo Bonzini , Eric Blake Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1630040269727100003 We did this with scripts/coccinelle/use-error_fatal.cocci before, in commit 50beeb68094 and 007b06578ab. This commit cleans up rarer variations that don't seem worth matching with Coccinelle. Cc: Thomas Huth Cc: Cornelia Huck Cc: Peter Xu Cc: Juan Quintela Cc: Stefan Hajnoczi Cc: Paolo Bonzini Cc: Marc-Andr=C3=A9 Lureau Cc: Gerd Hoffmann Cc: Daniel P. Berrang=C3=A9 Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-2-armbru@redhat.com> Reviewed-by: Eric Blake Reviewed-by: Peter Xu Acked-by: Michael S. Tsirkin Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/s390x/ipl.c | 6 +----- migration/migration.c | 7 +------ qemu-img.c | 6 +----- qemu-io.c | 6 +----- qemu-nbd.c | 5 +---- scsi/qemu-pr-helper.c | 11 +++-------- softmmu/vl.c | 7 +------ target/i386/sev.c | 8 +------- ui/console.c | 6 ++---- ui/spice-core.c | 7 +------ 10 files changed, 13 insertions(+), 56 deletions(-) diff --git a/hw/s390x/ipl.c b/hw/s390x/ipl.c index 8c863cf386..1821c6faee 100644 --- a/hw/s390x/ipl.c +++ b/hw/s390x/ipl.c @@ -711,7 +711,6 @@ int s390_ipl_pv_unpack(void) void s390_ipl_prepare_cpu(S390CPU *cpu) { S390IPLState *ipl =3D get_ipl_device(); - Error *err =3D NULL; =20 cpu->env.psw.addr =3D ipl->start_addr; cpu->env.psw.mask =3D IPL_PSW_MASK; @@ -723,10 +722,7 @@ void s390_ipl_prepare_cpu(S390CPU *cpu) } } if (ipl->netboot) { - if (load_netboot_image(&err) < 0) { - error_report_err(err); - exit(1); - } + load_netboot_image(&error_fatal); ipl->qipl.netboot_start_addr =3D cpu_to_be64(ipl->start_addr); } s390_ipl_set_boot_menu(ipl); diff --git a/migration/migration.c b/migration/migration.c index 041b8451a6..b169943f35 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -188,8 +188,6 @@ static gint page_request_addr_cmp(gconstpointer ap, gco= nstpointer bp) =20 void migration_object_init(void) { - Error *err =3D NULL; - /* This can only be called once. */ assert(!current_migration); current_migration =3D MIGRATION_OBJ(object_new(TYPE_MIGRATION)); @@ -210,10 +208,7 @@ void migration_object_init(void) qemu_mutex_init(¤t_incoming->page_request_mutex); current_incoming->page_requested =3D g_tree_new(page_request_addr_cmp); =20 - if (!migration_object_check(current_migration, &err)) { - error_report_err(err); - exit(1); - } + migration_object_check(current_migration, &error_fatal); =20 blk_mig_init(); ram_mig_init(); diff --git a/qemu-img.c b/qemu-img.c index 908fd0cce5..d77f3e76a9 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -5350,7 +5350,6 @@ int main(int argc, char **argv) { const img_cmd_t *cmd; const char *cmdname; - Error *local_error =3D NULL; int c; static const struct option long_options[] =3D { {"help", no_argument, 0, 'h'}, @@ -5368,10 +5367,7 @@ int main(int argc, char **argv) module_call_init(MODULE_INIT_TRACE); qemu_init_exec_dir(argv[0]); =20 - if (qemu_init_main_loop(&local_error)) { - error_report_err(local_error); - exit(EXIT_FAILURE); - } + qemu_init_main_loop(&error_fatal); =20 qcrypto_init(&error_fatal); =20 diff --git a/qemu-io.c b/qemu-io.c index 57f07501df..3924639b92 100644 --- a/qemu-io.c +++ b/qemu-io.c @@ -529,7 +529,6 @@ int main(int argc, char **argv) int flags =3D BDRV_O_UNMAP; int ret; bool writethrough =3D true; - Error *local_error =3D NULL; QDict *opts =3D NULL; const char *format =3D NULL; bool force_share =3D false; @@ -629,10 +628,7 @@ int main(int argc, char **argv) exit(1); } =20 - if (qemu_init_main_loop(&local_error)) { - error_report_err(local_error); - exit(1); - } + qemu_init_main_loop(&error_fatal); =20 if (!trace_init_backends()) { exit(1); diff --git a/qemu-nbd.c b/qemu-nbd.c index 26ffbf15af..65ebec598f 100644 --- a/qemu-nbd.c +++ b/qemu-nbd.c @@ -963,10 +963,7 @@ int main(int argc, char **argv) } } =20 - if (qemu_init_main_loop(&local_err)) { - error_report_err(local_err); - exit(EXIT_FAILURE); - } + qemu_init_main_loop(&error_fatal); bdrv_init(); atexit(qemu_nbd_shutdown); =20 diff --git a/scsi/qemu-pr-helper.c b/scsi/qemu-pr-helper.c index 7b9389b47b..f281daeced 100644 --- a/scsi/qemu-pr-helper.c +++ b/scsi/qemu-pr-helper.c @@ -1044,10 +1044,7 @@ int main(int argc, char **argv) } } =20 - if (qemu_init_main_loop(&local_err)) { - error_report_err(local_err); - exit(EXIT_FAILURE); - } + qemu_init_main_loop(&error_fatal); =20 server_watch =3D qio_channel_add_watch(QIO_CHANNEL(server_ioc), G_IO_IN, @@ -1061,10 +1058,8 @@ int main(int argc, char **argv) } } =20 - if ((daemonize || pidfile_specified) && - !qemu_write_pidfile(pidfile, &local_err)) { - error_report_err(local_err); - exit(EXIT_FAILURE); + if (daemonize || pidfile_specified) { + qemu_write_pidfile(pidfile, &error_fatal); } =20 #ifdef CONFIG_LIBCAP_NG diff --git a/softmmu/vl.c b/softmmu/vl.c index 5ca11e7469..6227f8f10e 100644 --- a/softmmu/vl.c +++ b/softmmu/vl.c @@ -2694,12 +2694,7 @@ void qmp_x_exit_preconfig(Error **errp) qemu_machine_creation_done(); =20 if (loadvm) { - Error *local_err =3D NULL; - if (!load_snapshot(loadvm, NULL, false, NULL, &local_err)) { - error_report_err(local_err); - autostart =3D 0; - exit(1); - } + load_snapshot(loadvm, NULL, false, NULL, &error_fatal); } if (replay_mode !=3D REPLAY_MODE_NONE) { replay_vmstate_init(); diff --git a/target/i386/sev.c b/target/i386/sev.c index 83df8c09f6..0b2c8f594a 100644 --- a/target/i386/sev.c +++ b/target/i386/sev.c @@ -737,7 +737,6 @@ static void sev_launch_finish(SevGuestState *sev) { int ret, error; - Error *local_err =3D NULL; =20 trace_kvm_sev_launch_finish(); ret =3D sev_ioctl(sev->sev_fd, KVM_SEV_LAUNCH_FINISH, 0, &error); @@ -752,12 +751,7 @@ sev_launch_finish(SevGuestState *sev) /* add migration blocker */ error_setg(&sev_mig_blocker, "SEV: Migration is not implemented"); - ret =3D migrate_add_blocker(sev_mig_blocker, &local_err); - if (local_err) { - error_report_err(local_err); - error_free(sev_mig_blocker); - exit(1); - } + migrate_add_blocker(sev_mig_blocker, &error_fatal); } =20 static void diff --git a/ui/console.c b/ui/console.c index 1103b65314..5d2e6178ff 100644 --- a/ui/console.c +++ b/ui/console.c @@ -1508,7 +1508,6 @@ void register_displaychangelistener(DisplayChangeList= ener *dcl) "This VM has no graphic display device."; static DisplaySurface *dummy; QemuConsole *con; - Error *err =3D NULL; =20 assert(!dcl->ds); =20 @@ -1523,9 +1522,8 @@ void register_displaychangelistener(DisplayChangeList= ener *dcl) dcl->con->gl =3D dcl; } =20 - if (dcl->con && !dpy_compatible_with(dcl->con, dcl, &err)) { - error_report_err(err); - exit(1); + if (dcl->con) { + dpy_compatible_with(dcl->con, dcl, &error_fatal); } =20 trace_displaychangelistener_register(dcl, dcl->ops->dpy_name); diff --git a/ui/spice-core.c b/ui/spice-core.c index 0371055e6c..31974b8d6c 100644 --- a/ui/spice-core.c +++ b/ui/spice-core.c @@ -671,18 +671,13 @@ static void qemu_spice_init(void) } passwordSecret =3D qemu_opt_get(opts, "password-secret"); if (passwordSecret) { - Error *local_err =3D NULL; if (qemu_opt_get(opts, "password")) { error_report("'password' option is mutually exclusive with " "'password-secret'"); exit(1); } password =3D qcrypto_secret_lookup_as_utf8(passwordSecret, - &local_err); - if (!password) { - error_report_err(local_err); - exit(1); - } + &error_fatal); } else { str =3D qemu_opt_get(opts, "password"); if (str) { --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630040449748557.2336275480455; Thu, 26 Aug 2021 22:00:49 -0700 (PDT) Received: from localhost ([::1]:56998 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTyy-0003rB-Ks for importer@patchew.org; Fri, 27 Aug 2021 01:00:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60700) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpT-0008Qp-UY for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:59 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:41777) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpQ-0000xk-7u for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:57 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-455-Qi_li_ZRMDSi_2qFAeXoYA-1; Fri, 27 Aug 2021 00:50:51 -0400 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 605BF1008064; Fri, 27 Aug 2021 04:50:50 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 693042854F; Fri, 27 Aug 2021 04:50:45 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 8308511380AB; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039855; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=XmFYbmbIYw4Xw3X3QezS8P5UjgyWd/vuLFna5pdDzkw=; b=NYaqIr5x9ZF9S222OCQvvwrv1RXJCFGx5lm7s+/S46tWWZU5vag3jyEsRKhjw08tF9r5b6 qeJzAAGMIkIWT9HosEF/W1WW1jDjeHoK9xaJzV134SriqlHZ8toyVZNaN9gm9AHqapEq+8 yvEw8n7Ghq3hroFfsoFfDa0xRwoCq/M= X-MC-Unique: Qi_li_ZRMDSi_2qFAeXoYA-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 02/15] spapr: Plug memory leak when we can't add a migration blocker Date: Fri, 27 Aug 2021 06:50:31 +0200 Message-Id: <20210827045044.388748-3-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Aravinda Prasad , peter.maydell@linaro.org, "Michael S . Tsirkin" , Ganesh Goudar , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , David Gibson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1630040451385100001 Fixes: 2500fb423adb17995485de0b4d507cf2f09e3a7f Cc: Aravinda Prasad Cc: Ganesh Goudar Cc: David Gibson Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-3-armbru@redhat.com> Acked-by: Michael S. Tsirkin Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/ppc/spapr_events.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/hw/ppc/spapr_events.c b/hw/ppc/spapr_events.c index 23e2e2fff1..690533cbdc 100644 --- a/hw/ppc/spapr_events.c +++ b/hw/ppc/spapr_events.c @@ -872,7 +872,6 @@ void spapr_mce_req_event(PowerPCCPU *cpu, bool recovere= d) SpaprMachineState *spapr =3D SPAPR_MACHINE(qdev_get_machine()); CPUState *cs =3D CPU(cpu); int ret; - Error *local_err =3D NULL; =20 if (spapr->fwnmi_machine_check_addr =3D=3D -1) { /* Non-FWNMI case, deliver it like an architected CPU interrupt. */ @@ -912,7 +911,7 @@ void spapr_mce_req_event(PowerPCCPU *cpu, bool recovere= d) } } =20 - ret =3D migrate_add_blocker(spapr->fwnmi_migration_blocker, &local_err= ); + ret =3D migrate_add_blocker(spapr->fwnmi_migration_blocker, NULL); if (ret =3D=3D -EBUSY) { /* * We don't want to abort so we let the migration to continue. --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630039948702737.6012859115743; Thu, 26 Aug 2021 21:52:28 -0700 (PDT) Received: from localhost ([::1]:58044 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTqt-0002Xu-K4 for importer@patchew.org; Fri, 27 Aug 2021 00:52:27 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60590) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpO-0008Ly-Gv for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:54 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:33749) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpM-0000u2-JH for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:53 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-259-lsY_b76uPFmk48IoyvKhpQ-1; Fri, 27 Aug 2021 00:50:50 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 31E06871803; Fri, 27 Aug 2021 04:50:49 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 254CF5D9C6; Fri, 27 Aug 2021 04:50:45 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 867F811380B0; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039852; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=eGOMPqPIK3zE39aLwpP+1nyk+wkkeD2/xgsLngEUHIE=; b=ZKA07k0+fQwLGVa0qaCJPhlQf++E9U3N738mQ0hS+hBxwXK1d9RbVPbruke8eaDbtVo5Iw mnk9oWctpU0nv8mvlzyIn8t6PRb4Pct3ufb07QEY5l4/9rIiSsy54vQ+6a90vdx2N9mugN 1NLM1QYcjZoRxdnOXe+RVSNFEDYe/sg= X-MC-Unique: lsY_b76uPFmk48IoyvKhpQ-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 03/15] spapr: Explain purpose of ->fwnmi_migration_blocker more clearly Date: Fri, 27 Aug 2021 06:50:32 +0200 Message-Id: <20210827045044.388748-4-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Aravinda Prasad , peter.maydell@linaro.org, "Michael S . Tsirkin" , "Dr . David Alan Gilbert" , Ganesh Goudar , David Gibson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1630039949557100001 Content-Type: text/plain; charset="utf-8" spapr_mce_req_event() makes an effort to prevent migration from degrading the reporting of FWNMIs. It adds a migration blocker when it receives one, and deletes it when it's done handling it. This is a best effort. Commit 2500fb423a "migration: Include migration support for machine check handling" tried to explain this in a comment. Rewrite the comment for clarity, and reposition it to make it clear it applies to all failure modes, not just "migration already in progress". Cc: David Gibson Cc: Aravinda Prasad Cc: Ganesh Goudar Cc: Dr. David Alan Gilbert Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-4-armbru@redhat.com> Acked-by: Michael S. Tsirkin --- hw/ppc/spapr_events.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/hw/ppc/spapr_events.c b/hw/ppc/spapr_events.c index 690533cbdc..630e86282c 100644 --- a/hw/ppc/spapr_events.c +++ b/hw/ppc/spapr_events.c @@ -911,16 +911,17 @@ void spapr_mce_req_event(PowerPCCPU *cpu, bool recove= red) } } =20 + /* + * Try to block migration while FWNMI is being handled, so the + * machine check handler runs where the information passed to it + * actually makes sense. This shouldn't actually block migration, + * only delay it slightly, assuming migration is retried. If the + * attempt to block fails, carry on. Unfortunately, it always + * fails when running with -only-migrate. A proper interface to + * delay migration completion for a bit could avoid that. + */ ret =3D migrate_add_blocker(spapr->fwnmi_migration_blocker, NULL); if (ret =3D=3D -EBUSY) { - /* - * We don't want to abort so we let the migration to continue. - * In a rare case, the machine check handler will run on the targe= t. - * Though this is not preferable, it is better than aborting - * the migration or killing the VM. It is okay to call - * migrate_del_blocker on a blocker that was not added (which the - * nmi-interlock handler would do when it's called after this). - */ warn_report("Received a fwnmi while migration was in progress"); } =20 --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630040267838415.2857647097169; Thu, 26 Aug 2021 21:57:47 -0700 (PDT) Received: from localhost ([::1]:47240 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTw2-0005lI-Mc for importer@patchew.org; Fri, 27 Aug 2021 00:57:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60726) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpV-0008SH-S0 for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:03 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:39330) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpR-0000yZ-QV for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:00 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-34-_Gt9aym6NwGu7xwkBZHF8w-1; Fri, 27 Aug 2021 00:50:54 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 8B912185302D; Fri, 27 Aug 2021 04:50:53 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id EB7DA604CC; Fri, 27 Aug 2021 04:50:45 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 89C1C11380B7; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039856; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=nil4oCky2ThalrTE8B6Fj1sg0/nu8aLttq8dyMFcGz0=; b=SenfJbw3sFhgdP5PT4gbGTByJFZh6eJH4UFKk+13RDNdgjq5b7KO1EFza3Tt7rIV3MkZTw 6/M24B6b0mS+PXrfB3z7uOxPmo9YT4rxas76o2EaS0BrZvvam9ZiI/iA/QsMsh6Rfm8gsy 8B6zfyY4vmxN9XmbFQe3CkQyqXBGwcg= X-MC-Unique: _Gt9aym6NwGu7xwkBZHF8w-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 04/15] multi-process: Fix pci_proxy_dev_realize() error handling Date: Fri, 27 Aug 2021 06:50:33 +0200 Message-Id: <20210827045044.388748-5-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -15 X-Spam_score: -1.6 X-Spam_bar: - X-Spam_report: (-1.6 / 5.0 requ) DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Elena Ufimtseva , peter.maydell@linaro.org, Jagannathan Raman , John G Johnson , "Michael S . Tsirkin" , Stefan Hajnoczi , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1630040269632100001 The Error ** argument must be NULL, &error_abort, &error_fatal, or a pointer to a variable containing NULL. Passing an argument of the latter kind twice without clearing it in between is wrong: if the first call sets an error, it no longer points to NULL for the second call. pci_proxy_dev_realize() is wrong that way: it passes @errp to qio_channel_new_fd() without checking for failure. If it runs into another failure, it trips error_setv()'s assertion. Fix it to check for failure properly. Fixes: 9f8112073aad8e485ac012ee18809457ab7f23a6 Cc: Elena Ufimtseva Cc: Jagannathan Raman Cc: John G Johnson Cc: Stefan Hajnoczi Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-5-armbru@redhat.com> Reviewed-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Jagannathan Raman Acked-by: Michael S. Tsirkin --- hw/remote/proxy.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/hw/remote/proxy.c b/hw/remote/proxy.c index 6dda705fc2..499f540c94 100644 --- a/hw/remote/proxy.c +++ b/hw/remote/proxy.c @@ -102,10 +102,18 @@ static void pci_proxy_dev_realize(PCIDevice *device, = Error **errp) } =20 dev->ioc =3D qio_channel_new_fd(fd, errp); + if (!dev->ioc) { + close(fd); + return; + } =20 error_setg(&dev->migration_blocker, "%s does not support migration", TYPE_PCI_PROXY_DEV); - migrate_add_blocker(dev->migration_blocker, errp); + if (migrate_add_blocker(dev->migration_blocker, errp) < 0) { + error_free(dev->migration_blocker); + object_unref(dev->ioc); + return; + } =20 qemu_mutex_init(&dev->io_mutex); qio_channel_set_blocking(dev->ioc, true, NULL); --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1630039963; cv=none; d=zohomail.com; s=zohoarc; b=Lz1BTa4lQ2spKYWnVVav8qcoWe4SUgvnfdaVkfgCQGkYDjOikW7t47OVislsEJYHcNQPnhrWg97rd3X8ewR07M9Lb0q6wrR0cbBwWCIXGyFYULWkgEaqJYxGMyVfs0hWw9DCLzXqbp7CYRQf3j+2tl6Hg24rbwvNh6pKR11NmN8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1630039963; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=g34dwAtC2rczrRuDc5vUhKKdm0oTRaK2ox/tT774cU8=; b=WM32cmke8Sx04LvZN9GV8RzglA42tUjLXU60HyZ/T+8FKKlPHIU2wqank+NorLIJsMkZn6dJJb+TJxdZZMnsQRQUZywQIK+yTeQLAYGIw8nZUkMqCxJRVR+trKEtZjY5thedHvILfq0dN/RPqLnuXg5mi/MqHcjRjKoPZoR6uQc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630039963659843.7260821446243; Thu, 26 Aug 2021 21:52:43 -0700 (PDT) Received: from localhost ([::1]:58414 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTr6-0002mS-TD for importer@patchew.org; Fri, 27 Aug 2021 00:52:42 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60734) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpV-0008T6-VY for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:03 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:47603) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpP-0000wM-MU for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:01 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-336-6yjR_K5cOlqSTaV0w-1ihA-1; Fri, 27 Aug 2021 00:50:52 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 548B9800493; Fri, 27 Aug 2021 04:50:51 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 96B936A8FB; Fri, 27 Aug 2021 04:50:47 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 8D3B711380B8; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039854; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=g34dwAtC2rczrRuDc5vUhKKdm0oTRaK2ox/tT774cU8=; b=fGlBLnMnRg64Z2WKPI3bQ/zFTG7V7vrO/BV+L4ad1yB1+waAq7anHbz4wtwduR8yR9kAOb dqkmsB1dDILiQPbiRpZSpVUE3KFXN3JjlteSxOKwfrFNmEegmWQ4F9zT1H/a2NJacGGbLU S/5ktZGrVqBxVRzkWwwYQrOwafZ25Xk= X-MC-Unique: 6yjR_K5cOlqSTaV0w-1ihA-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 05/15] vhost-scsi: Plug memory leak on migrate_add_blocker() failure Date: Fri, 27 Aug 2021 06:50:34 +0200 Message-Id: <20210827045044.388748-6-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -15 X-Spam_score: -1.6 X-Spam_bar: - X-Spam_report: (-1.6 / 5.0 requ) DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, "Michael S . Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1630039964377100003 Content-Type: text/plain; charset="utf-8" Cc: Michael S. Tsirkin Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-6-armbru@redhat.com> Acked-by: Michael S. Tsirkin --- hw/scsi/vhost-scsi.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/scsi/vhost-scsi.c b/hw/scsi/vhost-scsi.c index 8c611bfd2d..039caf2614 100644 --- a/hw/scsi/vhost-scsi.c +++ b/hw/scsi/vhost-scsi.c @@ -208,7 +208,6 @@ static void vhost_scsi_realize(DeviceState *dev, Error = **errp) "target SCSI device state or use shared storage over netwo= rk), " "set 'migratable' property to true to enable migration."); if (migrate_add_blocker(vsc->migration_blocker, errp) < 0) { - error_free(vsc->migration_blocker); goto free_virtio; } } @@ -233,11 +232,12 @@ static void vhost_scsi_realize(DeviceState *dev, Erro= r **errp) return; =20 free_vqs: + g_free(vsc->dev.vqs); if (!vsc->migratable) { migrate_del_blocker(vsc->migration_blocker); } - g_free(vsc->dev.vqs); free_virtio: + error_free(vsc->migration_blocker); virtio_scsi_common_unrealize(dev); close_fd: close(vhostfd); --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630040128304800.5843378212564; Thu, 26 Aug 2021 21:55:28 -0700 (PDT) Received: from localhost ([::1]:38394 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTtn-0008HA-5D for importer@patchew.org; Fri, 27 Aug 2021 00:55:27 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60622) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpQ-0008Mc-IZ for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:56 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:30372) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpO-0000vK-1v for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:56 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-171-Wqb9MmIrM9WzZgH8lvWj_Q-1; Fri, 27 Aug 2021 00:50:51 -0400 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id A7E9B107ACF5; Fri, 27 Aug 2021 04:50:50 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 96992100EB3D; Fri, 27 Aug 2021 04:50:47 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 9062C11380B9; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039853; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=BWlUrWAGyBnvnnB4p11+hOY4OzxYFBDt36eqGbHNQlY=; b=RcIb0q9Xt9GJkcbrywsjsSqEDXMfJktJ93dHdQlsRHxpx7Df2LjKNs6bMXiyaREx2k6ZXS I19wCSq9/0IY8GsXeIPLaBymP1P3DWvQFB+nj8bSGOfbfsR6DOiAUaxHp9ySX/bEfajfdE BM2m+R8wZi8QpDIUuDu6+6zddjm404k= X-MC-Unique: Wqb9MmIrM9WzZgH8lvWj_Q-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 06/15] i386: Never free migration blocker objects instead of sometimes Date: Fri, 27 Aug 2021 06:50:35 +0200 Message-Id: <20210827045044.388748-7-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, Marcelo Tosatti , "Michael S . Tsirkin" , Eduardo Habkost , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1630040129484100001 Content-Type: text/plain; charset="utf-8" invtsc_mig_blocker has static storage duration. When a CPU with certain features is initialized, and invtsc_mig_blocker is still null, we add a migration blocker and store it in invtsc_mig_blocker. The object is freed when migrate_add_blocker() fails, leaving invtsc_mig_blocker dangling. It is not freed on later failures. Same for hv_passthrough_mig_blocker and hv_no_nonarch_cs_mig_blocker. All failures are actually fatal, so whether we free or not doesn't really matter, except as bad examples to be copied / imitated. Clean this up in a minimal way: never free these blocker objects. Cc: Paolo Bonzini Cc: Marcelo Tosatti Cc: Eduardo Habkost Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-7-armbru@redhat.com> Acked-by: Michael S. Tsirkin --- target/i386/kvm/kvm.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/target/i386/kvm/kvm.c b/target/i386/kvm/kvm.c index e69abe48e3..57aed525b5 100644 --- a/target/i386/kvm/kvm.c +++ b/target/i386/kvm/kvm.c @@ -1437,7 +1437,6 @@ static int hyperv_init_vcpu(X86CPU *cpu) ret =3D migrate_add_blocker(hv_passthrough_mig_blocker, &local_err= ); if (local_err) { error_report_err(local_err); - error_free(hv_passthrough_mig_blocker); return ret; } } @@ -1452,7 +1451,6 @@ static int hyperv_init_vcpu(X86CPU *cpu) ret =3D migrate_add_blocker(hv_no_nonarch_cs_mig_blocker, &local_e= rr); if (local_err) { error_report_err(local_err); - error_free(hv_no_nonarch_cs_mig_blocker); return ret; } } @@ -1892,7 +1890,6 @@ int kvm_arch_init_vcpu(CPUState *cs) r =3D migrate_add_blocker(invtsc_mig_blocker, &local_err); if (local_err) { error_report_err(local_err); - error_free(invtsc_mig_blocker); return r; } } --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630040131743464.92068406764815; Thu, 26 Aug 2021 21:55:31 -0700 (PDT) Received: from localhost ([::1]:38772 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTtq-00004z-P2 for importer@patchew.org; Fri, 27 Aug 2021 00:55:30 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60746) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpX-0008Tz-NP for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:03 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:43947) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpV-00011k-Lg for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:03 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-318-TP-mdjo9PsigqqHnD4ZwHQ-1; Fri, 27 Aug 2021 00:50:59 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 364FD1853026; Fri, 27 Aug 2021 04:50:58 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 81A7260C04; Fri, 27 Aug 2021 04:50:50 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 93B9111380BA; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039861; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=umkqnFzl/0r4ozWVTTxfeYwJaL3iC1BP5CknSHEqjHE=; b=WVLYcHlOcyotIRrdyAM/X/M+uLhD720j/dSrTnGa+jlvIXur7gaCmKGsaJjblpCOHRw0mm n72+WoRMCxadQYjit3IsNv+qCNpAxL50Jhg2pyLhGgNhFFQ/CnHWrjxofsvi4OueGF7RDr reZ7UazWQxbiOcPgkJDPZwTlPm/uVAY= X-MC-Unique: TP-mdjo9PsigqqHnD4ZwHQ-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 07/15] vfio: Avoid error_propagate() after migrate_add_blocker() Date: Fri, 27 Aug 2021 06:50:36 +0200 Message-Id: <20210827045044.388748-8-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, Kirti Wankhede , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Alex Williamson , "Michael S . Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1630040133872100002 When migrate_add_blocker(blocker, &err) is followed by error_propagate(errp, err), we can often just as well do migrate_add_blocker(..., errp). This is the case in vfio_migration_probe(). Prior art: commit 386f6c07d2 "error: Avoid error_propagate() after migrate_add_blocker()". Cc: Kirti Wankhede Cc: Alex Williamson Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-8-armbru@redhat.com> Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed by: Kirti Wankhede Acked-by: Michael S. Tsirkin --- hw/vfio/migration.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/hw/vfio/migration.c b/hw/vfio/migration.c index 82f654afb6..ff6b45de6b 100644 --- a/hw/vfio/migration.c +++ b/hw/vfio/migration.c @@ -858,7 +858,6 @@ int vfio_migration_probe(VFIODevice *vbasedev, Error **= errp) { VFIOContainer *container =3D vbasedev->group->container; struct vfio_region_info *info =3D NULL; - Error *local_err =3D NULL; int ret =3D -ENOTSUP; =20 if (!vbasedev->enable_migration || !container->dirty_pages_supported) { @@ -885,9 +884,8 @@ add_blocker: "VFIO device doesn't support migration"); g_free(info); =20 - ret =3D migrate_add_blocker(vbasedev->migration_blocker, &local_err); - if (local_err) { - error_propagate(errp, local_err); + ret =3D migrate_add_blocker(vbasedev->migration_blocker, errp); + if (ret < 0) { error_free(vbasedev->migration_blocker); vbasedev->migration_blocker =3D NULL; } --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630040131548237.58334891188247; Thu, 26 Aug 2021 21:55:31 -0700 (PDT) Received: from localhost ([::1]:38796 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTtq-00005n-FY for importer@patchew.org; Fri, 27 Aug 2021 00:55:30 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60724) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpV-0008RZ-07 for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:01 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:41084) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpR-0000ya-QJ for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:59 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-160-X1XC2mr9OIaQXtjlB9kGLg-1; Fri, 27 Aug 2021 00:50:54 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id AA78A1082929; Fri, 27 Aug 2021 04:50:53 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 820995C1BB; Fri, 27 Aug 2021 04:50:50 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 9713811380BC; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039856; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=yUDnfdKqgeH7gZTvaV7zuHqS+a+BhXW6BWkZsYixnfs=; b=XR1YzVHmPSANCp5q2efZbrTDD6zFb6WuxG9gp84LeV107VcLQ4/HCpaF7gNTLhyv/JqLXG 3zlgZLkjEkCe/XEMetvjOeDM9Q5z3mG4V9XHvBe2lSrqOGVdt/qbR2mB7eK+XWi2/5jo/E tzdmb90Byg8WOIyDdASrtKem6vi0aNM= X-MC-Unique: X1XC2mr9OIaQXtjlB9kGLg-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 08/15] whpx nvmm: Drop useless migrate_del_blocker() Date: Fri, 27 Aug 2021 06:50:37 +0200 Message-Id: <20210827045044.388748-9-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, Sunil Muthuswamy , Reinoud Zandijk , Kamil Rytarowski , "Michael S . Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1630040133868100001 Content-Type: text/plain; charset="utf-8" There is nothing to delete after migrate_add_blocker() failed. Trying anyway is safe, but useless. Don't. Cc: Sunil Muthuswamy Cc: Kamil Rytarowski Cc: Reinoud Zandijk Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-9-armbru@redhat.com> Reviewed-by: Reinoud Zandijk Acked-by: Michael S. Tsirkin --- target/i386/nvmm/nvmm-all.c | 1 - target/i386/whpx/whpx-all.c | 1 - 2 files changed, 2 deletions(-) diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index dfa690d65d..7bb0d9e30e 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -929,7 +929,6 @@ nvmm_init_vcpu(CPUState *cpu) (void)migrate_add_blocker(nvmm_migration_blocker, &local_error); if (local_error) { error_report_err(local_error); - migrate_del_blocker(nvmm_migration_blocker); error_free(nvmm_migration_blocker); return -EINVAL; } diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index f832f286ac..cc8c0b984b 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -1349,7 +1349,6 @@ int whpx_init_vcpu(CPUState *cpu) (void)migrate_add_blocker(whpx_migration_blocker, &local_error); if (local_error) { error_report_err(local_error); - migrate_del_blocker(whpx_migration_blocker); error_free(whpx_migration_blocker); ret =3D -EINVAL; goto error; --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1630040369; cv=none; d=zohomail.com; s=zohoarc; b=achxAiJFedLHJSLynMMYuMDl2EBD3AmysXgYS8aEsyU1ZBeKn860Pd0BGBYGffDTvN0SWDnKoEQqRdFGJwbiLaDRtzafMkVRhJev3TN+bVJyq3A3YffuFFtGuT9CinJx3sxtmCioJsYumYVeFxwlXC4fE8M6bxCVZtcsA0MWQX4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1630040369; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=OLaY10SbrnYDFnARK3RfvhAxRRF63Q2XZvhca5jYl/Y=; b=d4LrQ/SHeFStTJxD7698cwAKK0eiIqx/F8rmvlBoaelYXWu1t6hSMUyPvThhetD1iJFgP0tYg2PK7quEzoktTB+9jrJD/aOLDagxzxoJazmnBG8xP79fHmrncYDD3ht1ay9AIy6tfz+aB+Xm1ejve7G9pkzpthIPdxfk+g5RTrw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630040369457286.30753086455763; Thu, 26 Aug 2021 21:59:29 -0700 (PDT) Received: from localhost ([::1]:53662 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTxg-0001aw-EW for importer@patchew.org; Fri, 27 Aug 2021 00:59:28 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60664) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpS-0008OQ-2O for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:58 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:35394) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpP-0000x2-Tw for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:57 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-369-7WzumaAjMYaURMZmExsO_g-1; Fri, 27 Aug 2021 00:50:52 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id E3BD1185302B; Fri, 27 Aug 2021 04:50:51 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 906C65D6B1; Fri, 27 Aug 2021 04:50:51 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 9A4EE11380C3; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039855; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=OLaY10SbrnYDFnARK3RfvhAxRRF63Q2XZvhca5jYl/Y=; b=Ob1kB2P2Fs0Zvc7Y0BCbNCqYzhd/bGkJ51IjN7Vp0hg6vJmpc9rLEtfKU86mr+KCobyieE LWH42MDCxj4W/ctx3Iluuc1IDN9VEK2BcLA+81+NDj1Tr40j5k1348hfWdwrJlfswKMLpz qXMTuDSx6vPH+N84HsGV1GTlKMfZP60= X-MC-Unique: 7WzumaAjMYaURMZmExsO_g-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 09/15] migration: Unify failure check for migrate_add_blocker() Date: Fri, 27 Aug 2021 06:50:38 +0200 Message-Id: <20210827045044.388748-10-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , "Michael S . Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1630040371650100001 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 Message-Id: <20210720125408.387910-10-armbru@redhat.com> Reviewed-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Michael S. Tsirkin --- 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 *tp= m_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 =3D 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 *opaq= ue, =20 if (hdev->migration_blocker !=3D NULL) { r =3D 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 expl= icit" " set of hv-* flags instead"); ret =3D 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 prope= rly" " pinned)"); ret =3D migrate_add_blocker(hv_no_nonarch_cs_mig_blocker, &local_e= rr); - 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 =3D 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"); =20 - (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"); =20 - (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 =3D -EINVAL; --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630040264769931.1562287171843; Thu, 26 Aug 2021 21:57:44 -0700 (PDT) Received: from localhost ([::1]:46954 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTvz-0005Zy-HC for importer@patchew.org; Fri, 27 Aug 2021 00:57:43 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60628) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpQ-0008NE-Uo for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:56 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:26451) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpP-0000w4-6L for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:56 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-369-ZooRchS6N6C8aiogU96lvQ-1; Fri, 27 Aug 2021 00:50:53 -0400 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id D4EBF1082922; Fri, 27 Aug 2021 04:50:51 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9BF5127CA4; Fri, 27 Aug 2021 04:50:51 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 9DBCD11380CC; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039854; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=6xabf60UgqTGCEOo05hM5dsvuCrL5rPaPCO8WXi1tz4=; b=SapG/IWC6A5UlBecaRs33WbZ9QanOVc8sDELZyRoN22284JRmhE9hmeIgf/TyT3nVioi2T HntlZk7hSFkTFIW4NV9wBuv8VsHiqKHV8PbR+kvDHAPt0R8Ebd21UXGydLUyLeLG5ft6jb DfuzE9gnkbOqmD886mq7LvmqmFhUs78= X-MC-Unique: ZooRchS6N6C8aiogU96lvQ-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 10/15] migration: Handle migration_incoming_setup() errors consistently Date: Fri, 27 Aug 2021 06:50:39 +0200 Message-Id: <20210827045044.388748-11-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, "Michael S . Tsirkin" , Juan Quintela , "Dr . David Alan Gilbert" , Pankaj Gupta , Eric Blake Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1630040265453100001 Content-Type: text/plain; charset="utf-8" Commit b673eab4e2 "multifd: Make multifd_load_setup() get an Error parameter" changed migration_incoming_setup() to take an Error ** argument, and adjusted the callers accordingly. It neglected to change adjust multifd_load_setup(): it still exit()s on error. Clean that up. The error now gets propagated up two call chains: via migration_fd_process_incoming() to rdma_accept_incoming_migration(), and via migration_ioc_process_incoming() to migration_channel_process_incoming(). Both chain ends report the error with error_report_err(), but otherwise ignore it. Behavioral change: we no longer exit() on this error. This is consistent with how we handle other errors here, e.g. from multifd_recv_new_channel() via migration_ioc_process_incoming() to migration_channel_process_incoming(). Whether it's consistently right or consistently wrong I can't tell. Also clean up the return value from the unusual 0 on success, 1 on error to the more common true on success, false on error. Cc: Juan Quintela Cc: Dr. David Alan Gilbert Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-11-armbru@redhat.com> Reviewed-by: Eric Blake Reviewed-by: Pankaj Gupta Acked-by: Michael S. Tsirkin --- migration/migration.c | 27 +++++++++------------------ 1 file changed, 9 insertions(+), 18 deletions(-) diff --git a/migration/migration.c b/migration/migration.c index b169943f35..bb909781b7 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -611,30 +611,25 @@ fail: } =20 /** - * @migration_incoming_setup: Setup incoming migration - * - * Returns 0 for no error or 1 for error - * + * migration_incoming_setup: Setup incoming migration * @f: file for main migration channel * @errp: where to put errors + * + * Returns: %true on success, %false on error. */ -static int migration_incoming_setup(QEMUFile *f, Error **errp) +static bool migration_incoming_setup(QEMUFile *f, Error **errp) { MigrationIncomingState *mis =3D migration_incoming_get_current(); - Error *local_err =3D NULL; =20 - if (multifd_load_setup(&local_err) !=3D 0) { - /* We haven't been able to create multifd threads - nothing better to do */ - error_report_err(local_err); - exit(EXIT_FAILURE); + if (multifd_load_setup(errp) !=3D 0) { + return false; } =20 if (!mis->from_src_file) { mis->from_src_file =3D f; } qemu_file_set_blocking(f, false); - return 0; + return true; } =20 void migration_incoming_process(void) @@ -677,14 +672,11 @@ static bool postcopy_try_recover(QEMUFile *f) =20 void migration_fd_process_incoming(QEMUFile *f, Error **errp) { - Error *local_err =3D NULL; - if (postcopy_try_recover(f)) { return; } =20 - if (migration_incoming_setup(f, &local_err)) { - error_propagate(errp, local_err); + if (!migration_incoming_setup(f, errp)) { return; } migration_incoming_process(); @@ -705,8 +697,7 @@ void migration_ioc_process_incoming(QIOChannel *ioc, Er= ror **errp) return; } =20 - if (migration_incoming_setup(f, &local_err)) { - error_propagate(errp, local_err); + if (!migration_incoming_setup(f, errp)) { return; } =20 --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630039961977166.7153032676248; Thu, 26 Aug 2021 21:52:41 -0700 (PDT) Received: from localhost ([::1]:58396 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTr6-0002lu-PX for importer@patchew.org; Fri, 27 Aug 2021 00:52:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60732) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpV-0008Sk-Rv for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:03 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:42722) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpT-000104-Lp for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:01 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-119-TO_6xUQoNNqcCd0l_fmBoA-1; Fri, 27 Aug 2021 00:50:56 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 9295B8015C7; Fri, 27 Aug 2021 04:50:55 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id DA5056A8FB; Fri, 27 Aug 2021 04:50:51 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id A1A8011380CD; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039858; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VMiO5XQKRsCLJozCfiQXC33/LdcJu72DfofnQV0//ug=; b=YDen0owgEcVvLAXdWZ5exl2MLwRnZjhVXKY+oc5acZ4wUNtY5vR3D0FHvPxcAPaviKFx/U zxjhnb6KHDmQHu6EaVFa9ziKLPdwlmTLSHFqfrkT63BGED2ElRMAcevUMB28iiox9XZ/1g 1UMKz6D/uDZez/VkhRW0mRi+xD4oV5I= X-MC-Unique: TO_6xUQoNNqcCd0l_fmBoA-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 11/15] microvm: Drop dead error handling in microvm_machine_state_init() Date: Fri, 27 Aug 2021 06:50:40 +0200 Message-Id: <20210827045044.388748-12-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Pankaj Gupta , Sergio Lopez , "Michael S . Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1630039962337100001 Stillborn in commit 0ebf007dda "hw/i386: Introduce the microvm machine type". Cc: Sergio Lopez Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-12-armbru@redhat.com> Reviewed-by: Sergio Lopez Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pankaj Gupta Acked-by: Michael S. Tsirkin --- hw/i386/microvm.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/hw/i386/microvm.c b/hw/i386/microvm.c index aba0c83219..f257ec5a0b 100644 --- a/hw/i386/microvm.c +++ b/hw/i386/microvm.c @@ -458,15 +458,10 @@ static void microvm_machine_state_init(MachineState *= machine) { MicrovmMachineState *mms =3D MICROVM_MACHINE(machine); X86MachineState *x86ms =3D X86_MACHINE(machine); - Error *local_err =3D NULL; =20 microvm_memory_init(mms); =20 x86_cpus_init(x86ms, CPU_VERSION_LATEST); - if (local_err) { - error_report_err(local_err); - exit(1); - } =20 microvm_devices_init(mms); } --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630040370037388.76582034747867; Thu, 26 Aug 2021 21:59:30 -0700 (PDT) Received: from localhost ([::1]:53642 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTxg-0001aI-OP for importer@patchew.org; Fri, 27 Aug 2021 00:59:28 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60728) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpV-0008SI-Py for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:01 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:27630) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpP-0000x4-SU for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:00 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-187-7xo7t6cfMlykd4Fu1J4kqQ-1; Fri, 27 Aug 2021 00:50:53 -0400 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 1C3C81008066; Fri, 27 Aug 2021 04:50:52 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id DDC261002F12; Fri, 27 Aug 2021 04:50:51 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id A50FC11380D0; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039855; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=KbP8ehGUI+ZOMO7IyFP6ePTXBQRiVQ0KsBAVyiE8Yz0=; b=HsBCKK+TgqfaJKWk+13vMGWgbO57dre3uy8dntANH/maw25Fcez5PLJop21f1lZz4cY1IJ m8ZwfXnfDNdvpuphFRUf2ohYkjCUR6bV35hD2QOe9AIROJeZGA0zGl+bwrZCA0ML9xA6CH 6G/KIS8u2Vw76d/LSaJ3KH1OtPQAWRc= X-MC-Unique: 7xo7t6cfMlykd4Fu1J4kqQ-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 12/15] vhost: Clean up how VhostOpts method vhost_get_config() fails Date: Fri, 27 Aug 2021 06:50:41 +0200 Message-Id: <20210827045044.388748-13-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kevin Wolf , peter.maydell@linaro.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , "Michael S . Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1630040371658100002 vhost_user_get_config() can fail without setting an error. Unclean. Its caller vhost_dev_get_config() compensates by substituting a generic error then. Goes back to commit 50de51387f "vhost: Distinguish errors in vhost_dev_get_config()". Clean up by moving the generic error from vhost_dev_get_config() to all the failure paths that neglect to set an error. Cc: Kevin Wolf Cc: Michael S. Tsirkin Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-13-armbru@redhat.com> Acked-by: Michael S. Tsirkin Reviewed-by: Philippe Mathieu-Daud=C3=A9 [Sign of error_setg_errno()'s second argument fixed in both calls] --- hw/virtio/vhost-user.c | 2 ++ hw/virtio/vhost.c | 10 ++-------- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c index aec6cc1990..229c114a19 100644 --- a/hw/virtio/vhost-user.c +++ b/hw/virtio/vhost-user.c @@ -2139,10 +2139,12 @@ static int vhost_user_get_config(struct vhost_dev *= dev, uint8_t *config, msg.payload.config.offset =3D 0; msg.payload.config.size =3D config_len; if (vhost_user_write(dev, &msg, NULL, 0) < 0) { + error_setg_errno(errp, EPROTO, "vhost_get_config failed"); return -EPROTO; } =20 if (vhost_user_read(dev, &msg) < 0) { + error_setg_errno(errp, EPROTO, "vhost_get_config failed"); return -EPROTO; } =20 diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c index dbbc6b6915..88f8a397dc 100644 --- a/hw/virtio/vhost.c +++ b/hw/virtio/vhost.c @@ -1564,17 +1564,11 @@ void vhost_ack_features(struct vhost_dev *hdev, con= st int *feature_bits, int vhost_dev_get_config(struct vhost_dev *hdev, uint8_t *config, uint32_t config_len, Error **errp) { - ERRP_GUARD(); - int ret; - assert(hdev->vhost_ops); =20 if (hdev->vhost_ops->vhost_get_config) { - ret =3D hdev->vhost_ops->vhost_get_config(hdev, config, config_len= , errp); - if (ret < 0 && !*errp) { - error_setg_errno(errp, -ret, "vhost_get_config failed"); - } - return ret; + return hdev->vhost_ops->vhost_get_config(hdev, config, config_len, + errp); } =20 error_setg(errp, "vhost_get_config not implemented"); --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630040261675637.9423874239758; Thu, 26 Aug 2021 21:57:41 -0700 (PDT) Received: from localhost ([::1]:46822 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTvw-0005UN-5L for importer@patchew.org; Fri, 27 Aug 2021 00:57:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60702) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpT-0008Qt-UX for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:01 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:50908) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpQ-0000xj-6D for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:57 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-371-ft_FYJHwOgyYC8bhIzhsUQ-1; Fri, 27 Aug 2021 00:50:53 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id B984C6409B; Fri, 27 Aug 2021 04:50:52 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 870F45D9C6; Fri, 27 Aug 2021 04:50:52 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id A85D411380D5; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039855; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=uMhKGLRAjuCGCEMJgfc2pOzJ0dST3KYaQ58TtBd+RDA=; b=PpRr1IwoYroGAfisZqBS0yP/UmGq0gWPeKHFygFtqtBLzFcB1qYoEdMQiwQB0BlJECE9wZ 2nrVWAXgW1h4ywhB/3Sula4cY8zV0V3Ot9Wqs18O+tBepChrTS1BnKEwPF+8qdQELMXtiA 7B3bRF5NGb+cJ/HGgMOoI47r2lkgLYA= X-MC-Unique: ft_FYJHwOgyYC8bhIzhsUQ-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 13/15] vhost: Clean up how VhostOpts method vhost_backend_init() fails Date: Fri, 27 Aug 2021 06:50:42 +0200 Message-Id: <20210827045044.388748-14-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kevin Wolf , peter.maydell@linaro.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , "Michael S . Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1630040263254100001 vhost_user_backend_init() can fail without setting an error. Unclean. Its caller vhost_dev_init() compensates by substituting a generic error then. Goes back to commit 28770ff935 "vhost: Distinguish errors in vhost_backend_init()". Clean up by moving the generic error from vhost_dev_init() to all the failure paths that neglect to set an error. Cc: Kevin Wolf Cc: Michael S. Tsirkin Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-14-armbru@redhat.com> Acked-by: Michael S. Tsirkin Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/virtio/vhost-user.c | 6 ++++++ hw/virtio/vhost.c | 4 ---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c index 229c114a19..2407836fac 100644 --- a/hw/virtio/vhost-user.c +++ b/hw/virtio/vhost-user.c @@ -1876,6 +1876,7 @@ static int vhost_user_backend_init(struct vhost_dev *= dev, void *opaque, =20 err =3D vhost_user_get_features(dev, &features); if (err < 0) { + error_setg_errno(errp, -err, "vhost_backend_init failed"); return err; } =20 @@ -1885,6 +1886,7 @@ static int vhost_user_backend_init(struct vhost_dev *= dev, void *opaque, err =3D vhost_user_get_u64(dev, VHOST_USER_GET_PROTOCOL_FEATURES, &protocol_features); if (err < 0) { + error_setg_errno(errp, EPROTO, "vhost_backend_init failed"); return -EPROTO; } =20 @@ -1903,6 +1905,7 @@ static int vhost_user_backend_init(struct vhost_dev *= dev, void *opaque, =20 err =3D vhost_user_set_protocol_features(dev, dev->protocol_featur= es); if (err < 0) { + error_setg_errno(errp, EPROTO, "vhost_backend_init failed"); return -EPROTO; } =20 @@ -1911,6 +1914,7 @@ static int vhost_user_backend_init(struct vhost_dev *= dev, void *opaque, err =3D vhost_user_get_u64(dev, VHOST_USER_GET_QUEUE_NUM, &dev->max_queues); if (err < 0) { + error_setg_errno(errp, EPROTO, "vhost_backend_init failed"= ); return -EPROTO; } } else { @@ -1940,6 +1944,7 @@ static int vhost_user_backend_init(struct vhost_dev *= dev, void *opaque, } else { err =3D vhost_user_get_max_memslots(dev, &ram_slots); if (err < 0) { + error_setg_errno(errp, EPROTO, "vhost_backend_init failed"= ); return -EPROTO; } =20 @@ -1966,6 +1971,7 @@ static int vhost_user_backend_init(struct vhost_dev *= dev, void *opaque, if (dev->vq_index =3D=3D 0) { err =3D vhost_setup_slave_channel(dev); if (err < 0) { + error_setg_errno(errp, EPROTO, "vhost_backend_init failed"); return -EPROTO; } } diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c index 88f8a397dc..3c0b537f89 100644 --- a/hw/virtio/vhost.c +++ b/hw/virtio/vhost.c @@ -1289,7 +1289,6 @@ int vhost_dev_init(struct vhost_dev *hdev, void *opaq= ue, VhostBackendType backend_type, uint32_t busyloop_timeou= t, Error **errp) { - ERRP_GUARD(); uint64_t features; int i, r, n_initialized_vqs =3D 0; =20 @@ -1301,9 +1300,6 @@ int vhost_dev_init(struct vhost_dev *hdev, void *opaq= ue, =20 r =3D hdev->vhost_ops->vhost_backend_init(hdev, opaque, errp); if (r < 0) { - if (!*errp) { - error_setg_errno(errp, -r, "vhost_backend_init failed"); - } goto fail; } =20 --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1630040575; cv=none; d=zohomail.com; s=zohoarc; b=dYG9kgdIDfrQ7IlQy/pkznSLKkSKhB1SZHW5efWwsb8hvj2lygMu8BsXsM7652RgCtckkrSKFBqDWvW4tvXyJkttutf7tXlpzD/hpJEFgrJ+CSzsDh9oyB5GSOgMOynBW0MoiUX0E3afhUbvpdtU4j9PwIMb/EQ15hyyP0sRei4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1630040575; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=RiCIwZPwwen9MKzCvNucEC8TgGM9Q6+lpE6S8gwaDsA=; b=fuAf6EXnLJZCPWOJtn/su7rlDP3p2Vqzqg0/Nf0EOIk++Xsxxr67e7luI5B4dzKlx+Mw6hGbCixARWh4EMuf9PC6igtvNMKKjCpK2cEpy31spYl2B4m+fAkqaxdFy3yAth/AEePdRxZRqXndRfJHHETZ95ktERe2gLG7wQasw44= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630040575530711.1273999615274; Thu, 26 Aug 2021 22:02:55 -0700 (PDT) Received: from localhost ([::1]:59446 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJU10-0005bx-CR for importer@patchew.org; Fri, 27 Aug 2021 01:02:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60738) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpW-0008TI-7O for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:03 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:47785) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpQ-0000yG-P3 for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:01 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-417-N5vsV_QbP1SrGYdCh8DfYw-1; Fri, 27 Aug 2021 00:50:53 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id E2B1687180C; Fri, 27 Aug 2021 04:50:52 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 913AE5D6B1; Fri, 27 Aug 2021 04:50:52 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id AB9DA11380D7; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039856; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=RiCIwZPwwen9MKzCvNucEC8TgGM9Q6+lpE6S8gwaDsA=; b=D3qZHw3vWKz4ntzwaylI0kRDc2BSMaPOh/UNkXdYcxxZOxKnejvGvjJNglAbr+3gz7lF6R hjgYxca9IGdi8DniVIpL/4HFTFKEbLPT19rZSr6wN1kotIlqz8gPP5EAMKJvg87+m5SSdf 4tK+Ai70Sz7h87v/dodmp4bDCYN0V2w= X-MC-Unique: N5vsV_QbP1SrGYdCh8DfYw-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 14/15] Remove superfluous ERRP_GUARD() Date: Fri, 27 Aug 2021 06:50:43 +0200 Message-Id: <20210827045044.388748-15-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, "Michael S . Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1630040577547100001 Content-Type: text/plain; charset="utf-8" Macro ERRP_GUARD() is only needed when we want to dereference @errp or pass it to error_prepend() or error_append_hint(). Delete superfluous ones. Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-15-armbru@redhat.com> Acked-by: Michael S. Tsirkin --- hw/remote/mpqemu-link.c | 3 --- qga/commands-posix-ssh.c | 17 ----------------- qga/commands-win32.c | 1 - ui/console.c | 1 - 4 files changed, 22 deletions(-) diff --git a/hw/remote/mpqemu-link.c b/hw/remote/mpqemu-link.c index e67a5de72c..7e841820e5 100644 --- a/hw/remote/mpqemu-link.c +++ b/hw/remote/mpqemu-link.c @@ -34,7 +34,6 @@ */ bool mpqemu_msg_send(MPQemuMsg *msg, QIOChannel *ioc, Error **errp) { - ERRP_GUARD(); bool iolock =3D qemu_mutex_iothread_locked(); bool iothread =3D qemu_in_iothread(); struct iovec send[2] =3D {}; @@ -97,7 +96,6 @@ bool mpqemu_msg_send(MPQemuMsg *msg, QIOChannel *ioc, Err= or **errp) static ssize_t mpqemu_read(QIOChannel *ioc, void *buf, size_t len, int **f= ds, size_t *nfds, Error **errp) { - ERRP_GUARD(); struct iovec iov =3D { .iov_base =3D buf, .iov_len =3D len }; bool iolock =3D qemu_mutex_iothread_locked(); bool iothread =3D qemu_in_iothread(); @@ -192,7 +190,6 @@ fail: uint64_t mpqemu_msg_send_and_await_reply(MPQemuMsg *msg, PCIProxyDev *pdev, Error **errp) { - ERRP_GUARD(); MPQemuMsg msg_reply =3D {0}; uint64_t ret =3D UINT64_MAX; =20 diff --git a/qga/commands-posix-ssh.c b/qga/commands-posix-ssh.c index 2dda136d64..f3a580b8cc 100644 --- a/qga/commands-posix-ssh.c +++ b/qga/commands-posix-ssh.c @@ -45,8 +45,6 @@ get_passwd_entry(const char *username, Error **errp) g_autoptr(GError) err =3D NULL; struct passwd *p; =20 - ERRP_GUARD(); - p =3D g_unix_get_passwd_entry_qemu(username, &err); if (p =3D=3D NULL) { error_setg(errp, "failed to lookup user '%s': %s", @@ -61,8 +59,6 @@ static bool mkdir_for_user(const char *path, const struct passwd *p, mode_t mode, Error **errp) { - ERRP_GUARD(); - if (g_mkdir(path, mode) =3D=3D -1) { error_setg(errp, "failed to create directory '%s': %s", path, g_strerror(errno)); @@ -87,8 +83,6 @@ mkdir_for_user(const char *path, const struct passwd *p, static bool check_openssh_pub_key(const char *key, Error **errp) { - ERRP_GUARD(); - /* simple sanity-check, we may want more? */ if (!key || key[0] =3D=3D '#' || strchr(key, '\n')) { error_setg(errp, "invalid OpenSSH public key: '%s'", key); @@ -104,8 +98,6 @@ check_openssh_pub_keys(strList *keys, size_t *nkeys, Err= or **errp) size_t n =3D 0; strList *k; =20 - ERRP_GUARD(); - for (k =3D keys; k !=3D NULL; k =3D k->next) { if (!check_openssh_pub_key(k->value, errp)) { return false; @@ -126,8 +118,6 @@ write_authkeys(const char *path, const GStrv keys, g_autofree char *contents =3D NULL; g_autoptr(GError) err =3D NULL; =20 - ERRP_GUARD(); - contents =3D g_strjoinv("\n", keys); if (!g_file_set_contents(path, contents, -1, &err)) { error_setg(errp, "failed to write to '%s': %s", path, err->message= ); @@ -155,8 +145,6 @@ read_authkeys(const char *path, Error **errp) g_autoptr(GError) err =3D NULL; g_autofree char *contents =3D NULL; =20 - ERRP_GUARD(); - if (!g_file_get_contents(path, &contents, NULL, &err)) { error_setg(errp, "failed to read '%s': %s", path, err->message); return NULL; @@ -178,7 +166,6 @@ qmp_guest_ssh_add_authorized_keys(const char *username,= strList *keys, strList *k; size_t nkeys, nauthkeys; =20 - ERRP_GUARD(); reset =3D has_reset && reset; =20 if (!check_openssh_pub_keys(keys, &nkeys, errp)) { @@ -228,8 +215,6 @@ qmp_guest_ssh_remove_authorized_keys(const char *userna= me, strList *keys, GStrv a; size_t nkeys =3D 0; =20 - ERRP_GUARD(); - if (!check_openssh_pub_keys(keys, NULL, errp)) { return; } @@ -277,8 +262,6 @@ qmp_guest_ssh_get_authorized_keys(const char *username,= Error **errp) g_autoptr(GuestAuthorizedKeys) ret =3D NULL; int i; =20 - ERRP_GUARD(); - p =3D get_passwd_entry(username, errp); if (p =3D=3D NULL) { return NULL; diff --git a/qga/commands-win32.c b/qga/commands-win32.c index 7bac0c5d42..4e84afd83b 100644 --- a/qga/commands-win32.c +++ b/qga/commands-win32.c @@ -976,7 +976,6 @@ out: =20 GuestDiskInfoList *qmp_guest_get_disks(Error **errp) { - ERRP_GUARD(); GuestDiskInfoList *ret =3D NULL; HDEVINFO dev_info; SP_DEVICE_INTERFACE_DATA dev_iface_data; diff --git a/ui/console.c b/ui/console.c index 5d2e6178ff..eabbbc951c 100644 --- a/ui/console.c +++ b/ui/console.c @@ -1481,7 +1481,6 @@ static bool displaychangelistener_has_dmabuf(DisplayC= hangeListener *dcl) static bool dpy_compatible_with(QemuConsole *con, DisplayChangeListener *dcl, Error **errp) { - ERRP_GUARD(); int flags; =20 flags =3D con->hw_ops->get_flags ? con->hw_ops->get_flags(con->hw) : 0; --=20 2.31.1 From nobody Wed May 1 04:24:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1630040122789803.9459532105869; Thu, 26 Aug 2021 21:55:22 -0700 (PDT) Received: from localhost ([::1]:38238 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mJTth-0008Aa-Oi for importer@patchew.org; Fri, 27 Aug 2021 00:55:21 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60704) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpT-0008Qu-VF for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:51:01 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:41078) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJTpQ-0000xu-GV for qemu-devel@nongnu.org; Fri, 27 Aug 2021 00:50:59 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-468-tfkuu6DrNcS9Q4AJSvY_nQ-1; Fri, 27 Aug 2021 00:50:54 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 44A011853027; Fri, 27 Aug 2021 04:50:53 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-112-4.ams2.redhat.com [10.36.112.4]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 1273A5D9C6; Fri, 27 Aug 2021 04:50:53 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id AEFCE1136421; Fri, 27 Aug 2021 06:50:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1630039855; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=LIM17xFZhebV2HY1K8i3sriwSQcdwZ09oJbtV/tEBYE=; b=Yzk4Rf2hXc8Lol+mVmQf2MUQpjjK0AtjK58aI5hZ/+GCPj+knsslZXcQMxzDsPiebQD8A4 miXroKy/4MxGG1uyXSWbf74Z/ucoJRtIUsq1Pc3M01rb4et+YDqypDLJhQgSry/ztS2+6A QoPd+6lRfKcECcrYQKCxwh1+08flg2M= X-MC-Unique: tfkuu6DrNcS9Q4AJSvY_nQ-1 From: Markus Armbruster To: qemu-devel@nongnu.org Subject: [PULL 15/15] vl: Clean up -smp error handling Date: Fri, 27 Aug 2021 06:50:44 +0200 Message-Id: <20210827045044.388748-16-armbru@redhat.com> In-Reply-To: <20210827045044.388748-1-armbru@redhat.com> References: <20210827045044.388748-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=armbru@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=armbru@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.742, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, "Michael S . Tsirkin" , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1630040123478100001 The Error ** argument must be NULL, &error_abort, &error_fatal, or a pointer to a variable containing NULL. Passing an argument of the latter kind twice without clearing it in between is wrong: if the first call sets an error, it no longer points to NULL for the second call. machine_parse_property_opt() is wrong that way: it passes @errp to keyval_parse() without checking for failure, then passes it to keyval_merge(). Harmless, since the only caller passes &error_fatal. Clean up: drop the parameter, and use &error_fatal directly. Cc: Paolo Bonzini Signed-off-by: Markus Armbruster Message-Id: <20210720125408.387910-16-armbru@redhat.com> Reviewed-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Michael S. Tsirkin [Rebased, conflict with commit a3c2f128306 resolved] --- softmmu/vl.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/softmmu/vl.c b/softmmu/vl.c index 6227f8f10e..bdeb17809d 100644 --- a/softmmu/vl.c +++ b/softmmu/vl.c @@ -1550,20 +1550,17 @@ machine_merge_property(const char *propname, QDict = *prop, Error **errp) =20 static void machine_parse_property_opt(QemuOptsList *opts_list, const char *propname, - const char *arg, Error **errp) + const char *arg) { QDict *prop =3D NULL; bool help =3D false; =20 - prop =3D keyval_parse(arg, opts_list->implied_opt_name, &help, errp); + prop =3D keyval_parse(arg, opts_list->implied_opt_name, &help, &error_= fatal); if (help) { qemu_opts_print_help(opts_list, true); exit(0); } - if (!prop) { - return; - } - machine_merge_property(propname, prop, errp); + machine_merge_property(propname, prop, &error_fatal); qobject_unref(prop); } =20 @@ -3343,7 +3340,8 @@ void qemu_init(int argc, char **argv, char **envp) } break; case QEMU_OPTION_smp: - machine_parse_property_opt(qemu_find_opts("smp-opts"), "sm= p", optarg, &error_fatal); + machine_parse_property_opt(qemu_find_opts("smp-opts"), + "smp", optarg); break; case QEMU_OPTION_vnc: vnc_parse(optarg); --=20 2.31.1