[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH] tools/xl: Guard main_dt_overlay() with LIBXL_HAVE_DT_OVERLAY
main_dt_overlay() makes a call to libxl_dt_overlay() which is for now only compiled for Arm. This causes the build failure as reported by gitlab CI and OSSTEST. Fix it by guarding the function, prototype and entry in cmd_table[] using LIBXL_HAVE_DT_OVERLAY. This has an advantage over regular Arm guard so that the code will not need to be modified again if other architecture gain support for this feature. Fixes: 61765a07e3d8 ("tools/xl: Add new xl command overlay for device tree overlay support") Reported-by: Jan Beulich <jbeulich@xxxxxxxx> Signed-off-by: Michal Orzel <michal.orzel@xxxxxxx> --- There are still other parts of dt overlay support in toolstack that would want to be revisited in order to use guards suitable to be used by other arches. --- tools/xl/xl.h | 2 ++ tools/xl/xl_cmdtable.c | 2 ++ tools/xl/xl_vmcontrol.c | 3 +++ 3 files changed, 7 insertions(+) diff --git a/tools/xl/xl.h b/tools/xl/xl.h index a923daccd340..3045b5a8e3f0 100644 --- a/tools/xl/xl.h +++ b/tools/xl/xl.h @@ -138,7 +138,9 @@ int main_shutdown(int argc, char **argv); int main_reboot(int argc, char **argv); int main_list(int argc, char **argv); int main_vm_list(int argc, char **argv); +#ifdef LIBXL_HAVE_DT_OVERLAY int main_dt_overlay(int argc, char **argv); +#endif int main_create(int argc, char **argv); int main_config_update(int argc, char **argv); int main_button_press(int argc, char **argv); diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c index 2463521156a1..62bdb2aeaa35 100644 --- a/tools/xl/xl_cmdtable.c +++ b/tools/xl/xl_cmdtable.c @@ -631,12 +631,14 @@ const struct cmd_spec cmd_table[] = { "Issue a qemu monitor command to the device model of a domain", "<Domain> <Command>", }, +#ifdef LIBXL_HAVE_DT_OVERLAY { "dt-overlay", &main_dt_overlay, 0, 1, "Add/Remove a device tree overlay", "add/remove <.dtbo>" "-h print this help\n" }, +#endif }; const int cmdtable_len = ARRAY_SIZE(cmd_table); diff --git a/tools/xl/xl_vmcontrol.c b/tools/xl/xl_vmcontrol.c index cea5b4a88e81..98f6bd2e7607 100644 --- a/tools/xl/xl_vmcontrol.c +++ b/tools/xl/xl_vmcontrol.c @@ -1265,6 +1265,7 @@ int main_create(int argc, char **argv) return 0; } +#ifdef LIBXL_HAVE_DT_OVERLAY int main_dt_overlay(int argc, char **argv) { const char *overlay_ops = NULL; @@ -1317,6 +1318,8 @@ int main_dt_overlay(int argc, char **argv) return rc; } +#endif + /* * Local variables: * mode: C -- 2.25.1
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |