On 29.10.2024 21:35, Peter Xu wrote:
On Tue, Oct 29, 2024 at 03:58:16PM +0100, Maciej S. Szmigiero wrote:
From: "Maciej S. Szmigiero" <maciej.szmigi...@oracle.com>

Some of these SaveVMHandlers were missing the BQL behavior annotation,
making people wonder what it exactly is.

Signed-off-by: Maciej S. Szmigiero <maciej.szmigi...@oracle.com>
---
  include/migration/register.h | 4 ++++
  1 file changed, 4 insertions(+)

diff --git a/include/migration/register.h b/include/migration/register.h
index f60e797894e5..c411d84876ec 100644
--- a/include/migration/register.h
+++ b/include/migration/register.h
@@ -210,6 +210,8 @@ typedef struct SaveVMHandlers {
      void (*state_pending_exact)(void *opaque, uint64_t *must_precopy,
                                  uint64_t *can_postcopy);
+ /* This runs inside the BQL. */
+
      /**
       * @load_state
       *
@@ -227,6 +229,8 @@ typedef struct SaveVMHandlers {
       */
      int (*load_state)(QEMUFile *f, void *opaque, int version_id);
+ /* The following handlers run inside the BQL. */

If above also requires BQL, why not move this line upper?

The reason for this is that my main patch set also adds
"load_state_buffer" handler, which runs without BQL.

That handler is ordered next after "load_state" and I tried
to avoid further comment churn here.

But if you prefer to change these comments in the patch
introducing "load_state_buffer" handler instead then it's
fine.
OTOH, I think resume_prepare() doesn't require BQL..

Yes, it seems like resume_prepare() is only called outside BQL.
Will update the patch.

Thanks,
Maciej


Reply via email to