[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v6 2/4] tools/xl: Allow compilation of 'xl resume' command on Arm
Hi Anthony, On Thu, Jul 24, 2025 at 5:01 PM Anthony PERARD <anthony@xxxxxxxxxxxxxx> wrote: > > On Thu, Jul 24, 2025 at 12:40:57PM +0300, Mykola Kvach wrote: > > From: Mykola Kvach <mykola_kvach@xxxxxxxx> > > > > The "xl resume" command was previously excluded from Arm builds because > > system suspend/resume (e.g., SYSTEM_SUSPEND via vPSCI) was not > > implemented. On x86, this command is used for ACPI S3 suspend/resume. > > > > This change enables compilation of `xl resume` on Arm regardless of the > > underlying implementation status, making the tool available for testing > > and future feature support. The relevant libxl infrastructure and handler > > functions are already present and usable. > > > > The macro `LIBXL_HAVE_NO_SUSPEND_RESUME` has been renamed to > > `LIBXL_HAVE_NO_SUSPEND` to better reflect the updated semantics. > > > > Note: This does not imply full system suspend/resume support on Arm. > > The `xl suspend` command still does not work on Arm platforms. > > > > Signed-off-by: Mykola Kvach <mykola_kvach@xxxxxxxx> > > --- > > Changes in v6: > > - Renamed macro from LIBXL_HAVE_NO_SUSPEND_RESUME to LIBXL_HAVE_NO_SUSPEND > > to better reflect the scope of this change > > - Applied cosmetic changes based on review feedback > > --- > > tools/include/libxl.h | 5 ++--- > > tools/xl/xl.h | 10 +++++----- > > tools/xl/xl_cmdtable.c | 8 ++++---- > > tools/xl/xl_migrate.c | 4 ++-- > > tools/xl/xl_saverestore.c | 4 ++-- > > tools/xl/xl_vmcontrol.c | 14 +++++++------- > > 6 files changed, 22 insertions(+), 23 deletions(-) > > > > diff --git a/tools/include/libxl.h b/tools/include/libxl.h > > index d6b6e5d2dd..632264912a 100644 > > --- a/tools/include/libxl.h > > +++ b/tools/include/libxl.h > > @@ -1128,17 +1128,16 @@ typedef struct libxl__ctx libxl_ctx; > > #define LIBXL_HAVE_SIGCHLD_SHARING 1 > > > > /* > > - * LIBXL_HAVE_NO_SUSPEND_RESUME > > + * LIBXL_HAVE_NO_SUSPEND > > * > > * Is this is defined then the platform has no support for saving, > > * restoring or migrating a domain. In this case the related functions > > * should be expected to return failure. That is: > > * - libxl_domain_suspend > > - * - libxl_domain_resume > > * - libxl_domain_remus_start > > */ > > #if defined(__arm__) || defined(__aarch64__) > > -#define LIBXL_HAVE_NO_SUSPEND_RESUME 1 > > +#define LIBXL_HAVE_NO_SUSPEND 1 > > #endif > > I'm sorry, if you remove LIBXL_HAVE_NO_SUSPEND_RESUME, you have to > implement all the function listed. I'm pretty sure `libvirt` isn't going > to build (on arm) if you remove that macro... Actually, libvirt is going > to build, it's going to expect migration to work, and probably allow to > try to migrate Arm VMs instead of bailing out early. > > I wonder what this LIBXL_HAVE_NO_SUSPEND_RESUME is for, since you don't > make any changes to libxl (tools/libs/light), but only to program that > make use of it. > > Looking at 3ac3817762d1 ("xl: suppress suspend/resume functions on platforms > which do not support it.") > > https://xenbits.xenproject.org/gitweb/?p=xen.git;a=commitdiff;h=3ac3817762d1a8b39fa45998ec8c40cabfcfc802 > it seems the real purpose was just an hint that migrate/suspend/saving > aren't going to work on that platform. > > Looks like `xl resume` is a fairly new command which only makes use if > libxl_domain_resume outside of migration, but the macro > LIBXL_HAVE_NO_SUSPEND_RESUME was mostly a hint that migration doesn't > work. > > So I think moving the `xl resume` command out of > LIBXL_HAVE_NO_SUSPEND_RESUME would be good enough for this patch, > without touching libxl.h. Got it. I'll revert the patch to the previous version. Thanks for the review and clarification -- much appreciated! > > Cheers, > > -- > Anthony PERARD Best regards, Mykola
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |