From: Fabiano Rosas <farosas@suse.de>
To: Arun Menon <armenon@redhat.com>, qemu-devel@nongnu.org
Cc: "Peter Xu" <peterx@redhat.com>,
"Alex Bennée" <alex.bennee@linaro.org>,
"Akihiko Odaki" <odaki@rsg.ci.i.u-tokyo.ac.jp>,
"Dmitry Osipenko" <dmitry.osipenko@collabora.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
"Marcel Apfelbaum" <marcel.apfelbaum@gmail.com>,
"Cornelia Huck" <cohuck@redhat.com>,
"Halil Pasic" <pasic@linux.ibm.com>,
"Eric Farman" <farman@linux.ibm.com>,
"Thomas Huth" <thuth@redhat.com>,
"Christian Borntraeger" <borntraeger@linux.ibm.com>,
"Matthew Rosato" <mjrosato@linux.ibm.com>,
"Richard Henderson" <richard.henderson@linaro.org>,
"David Hildenbrand" <david@redhat.com>,
"Ilya Leoshkevich" <iii@linux.ibm.com>,
"Nicholas Piggin" <npiggin@gmail.com>,
"Harsh Prateek Bora" <harshpb@linux.ibm.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Fam Zheng" <fam@euphon.net>,
"Alex Williamson" <alex.williamson@redhat.com>,
"Cédric Le Goater" <clg@redhat.com>,
"Steve Sistare" <steven.sistare@oracle.com>,
"Marc-André Lureau" <marcandre.lureau@redhat.com>,
qemu-s390x@nongnu.org, qemu-ppc@nongnu.org,
"Hailiang Zhang" <zhanghailiang@xfusion.com>,
"Stefan Berger" <stefanb@linux.vnet.ibm.com>,
"Peter Maydell" <peter.maydell@linaro.org>,
qemu-arm@nongnu.org, "Arun Menon" <armenon@redhat.com>
Subject: Re: [PATCH v12 24/27] migration: Remove error variant of vmstate_save_state() function
Date: Mon, 25 Aug 2025 18:12:25 -0300 [thread overview]
Message-ID: <878qj7ayx2.fsf@suse.de> (raw)
In-Reply-To: <20250821-propagate_tpm_error-v12-24-72b803e707dc@redhat.com>
Arun Menon <armenon@redhat.com> writes:
> This commit removes the redundant vmstate_save_state_with_err()
> function.
>
> Previously, commit 969298f9d7 introduced vmstate_save_state_with_err()
> to handle error propagation, while vmstate_save_state() existed for
> non-error scenarios.
> This is because there were code paths where vmstate_save_state_v()
> (called internally by vmstate_save_state) did not explicitly set
> errors on failure.
>
> This change unifies error handling by
> - updating vmstate_save_state() to accept an Error **errp argument.
> - vmstate_save_state_v() ensures errors are set directly within the errp
> object, eliminating the need for two separate functions.
>
> All calls to vmstate_save_state_with_err() are replaced with
> vmstate_save_state(). This simplifies the API and improves code
> maintainability.
>
> vmstate_save_state() that only calls vmstate_save_state_v(),
> by inference, also has errors set in errp in case of failure.
> The errors are reported using warn_report_err().
> If we want the function to exit on error, then &error_fatal is
> passed.
>
> Signed-off-by: Arun Menon <armenon@redhat.com>
Reviewed-by: Fabiano Rosas <farosas@suse.de>
next prev parent reply other threads:[~2025-08-25 21:13 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-21 8:43 [PATCH v12 00/27] migration: propagate vTPM errors using Error objects Arun Menon
2025-08-21 8:43 ` [PATCH v12 01/27] migration: push Error **errp into vmstate_subsection_load() Arun Menon
2025-08-25 20:27 ` Fabiano Rosas
2025-08-21 8:43 ` [PATCH v12 02/27] migration: push Error **errp into vmstate_load_state() Arun Menon
2025-08-25 20:47 ` Fabiano Rosas
2025-08-28 1:34 ` Akihiko Odaki
2025-08-28 8:17 ` Arun Menon
2025-08-28 8:21 ` Arun Menon
2025-08-29 10:37 ` Akihiko Odaki
2025-08-29 14:51 ` Arun Menon
2025-08-21 8:43 ` [PATCH v12 03/27] migration: push Error **errp into qemu_loadvm_state_header() Arun Menon
2025-08-21 8:43 ` [PATCH v12 04/27] migration: push Error **errp into vmstate_load() Arun Menon
2025-08-25 20:52 ` Fabiano Rosas
2025-08-21 8:43 ` [PATCH v12 05/27] migration: push Error **errp into loadvm_process_command() Arun Menon
2025-08-25 20:54 ` Fabiano Rosas
2025-08-21 8:44 ` [PATCH v12 06/27] migration: push Error **errp into loadvm_handle_cmd_packaged() Arun Menon
2025-08-21 8:44 ` [PATCH v12 07/27] migration: push Error **errp into qemu_loadvm_state() Arun Menon
2025-08-25 20:56 ` Fabiano Rosas
2025-08-21 8:44 ` [PATCH v12 08/27] migration: push Error **errp into qemu_load_device_state() Arun Menon
2025-08-25 20:57 ` Fabiano Rosas
2025-08-21 8:44 ` [PATCH v12 09/27] migration: push Error **errp into qemu_loadvm_state_main() Arun Menon
2025-08-25 21:01 ` Fabiano Rosas
2025-08-21 8:44 ` [PATCH v12 10/27] migration: push Error **errp into qemu_loadvm_section_start_full() Arun Menon
2025-08-25 21:03 ` Fabiano Rosas
2025-08-21 8:44 ` [PATCH v12 11/27] migration: push Error **errp into qemu_loadvm_section_part_end() Arun Menon
2025-08-25 21:04 ` Fabiano Rosas
2025-08-21 8:44 ` [PATCH v12 12/27] migration: Update qemu_file_get_return_path() docs and remove dead checks Arun Menon
2025-08-21 8:44 ` [PATCH v12 13/27] migration: make loadvm_postcopy_handle_resume() void Arun Menon
2025-08-21 8:44 ` [PATCH v12 14/27] migration: push Error **errp into ram_postcopy_incoming_init() Arun Menon
2025-08-21 8:44 ` [PATCH v12 15/27] migration: push Error **errp into loadvm_postcopy_handle_advise() Arun Menon
2025-08-21 8:44 ` [PATCH v12 16/27] migration: push Error **errp into loadvm_postcopy_handle_listen() Arun Menon
2025-08-21 8:44 ` [PATCH v12 17/27] migration: push Error **errp into loadvm_postcopy_handle_run() Arun Menon
2025-08-21 8:44 ` [PATCH v12 18/27] migration: push Error **errp into loadvm_postcopy_ram_handle_discard() Arun Menon
2025-08-21 8:44 ` [PATCH v12 19/27] migration: push Error **errp into loadvm_handle_recv_bitmap() Arun Menon
2025-08-25 21:05 ` Fabiano Rosas
2025-08-21 8:44 ` [PATCH v12 20/27] migration: Return -1 on memory allocation failure in ram.c Arun Menon
2025-08-21 8:44 ` [PATCH v12 21/27] migration: push Error **errp into loadvm_process_enable_colo() Arun Menon
2025-08-21 8:44 ` [PATCH v12 22/27] migration: push Error **errp into loadvm_postcopy_handle_switchover_start() Arun Menon
2025-08-21 8:44 ` [PATCH v12 23/27] migration: Capture error in postcopy_ram_listen_thread() Arun Menon
2025-08-25 21:06 ` Fabiano Rosas
2025-08-21 8:44 ` [PATCH v12 24/27] migration: Remove error variant of vmstate_save_state() function Arun Menon
2025-08-25 21:12 ` Fabiano Rosas [this message]
2025-08-21 8:44 ` [PATCH v12 25/27] migration: Rename post_save() to cleanup_save() and make it void Arun Menon
2025-08-25 21:30 ` Fabiano Rosas
2025-08-21 8:44 ` [PATCH v12 26/27] migration: Add error-parameterized function variants in VMSD struct Arun Menon
2025-08-25 21:21 ` Fabiano Rosas
2025-08-21 8:44 ` [PATCH v12 27/27] backends/tpm: Propagate vTPM error on migration failure Arun Menon
2025-08-25 21:22 ` Fabiano Rosas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=878qj7ayx2.fsf@suse.de \
--to=farosas@suse.de \
--cc=alex.bennee@linaro.org \
--cc=alex.williamson@redhat.com \
--cc=armenon@redhat.com \
--cc=borntraeger@linux.ibm.com \
--cc=clg@redhat.com \
--cc=cohuck@redhat.com \
--cc=david@redhat.com \
--cc=dmitry.osipenko@collabora.com \
--cc=fam@euphon.net \
--cc=farman@linux.ibm.com \
--cc=harshpb@linux.ibm.com \
--cc=iii@linux.ibm.com \
--cc=marcandre.lureau@redhat.com \
--cc=marcel.apfelbaum@gmail.com \
--cc=mjrosato@linux.ibm.com \
--cc=mst@redhat.com \
--cc=npiggin@gmail.com \
--cc=odaki@rsg.ci.i.u-tokyo.ac.jp \
--cc=pasic@linux.ibm.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=peterx@redhat.com \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=qemu-s390x@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=stefanb@linux.vnet.ibm.com \
--cc=steven.sistare@oracle.com \
--cc=thuth@redhat.com \
--cc=zhanghailiang@xfusion.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.