[Buildroot] [PATCH] package/linux-tools: add hv_vss_daemon
Thomas Petazzoni
thomas.petazzoni at bootlin.com
Thu Dec 5 20:55:48 UTC 2019
Hello Pascal,
On Thu, 5 Dec 2019 16:44:28 +0100
Pascal de Bruijn <p.debruijn at unilogic.nl> wrote:
> hyperv integration services for snapshotting a running vm
>
> hv_vss_daemon facilitates a FIFREEZE initiated from the hypervisor
>
> Signed-off-by: Pascal de Bruijn <p.debruijn at unilogic.nl>
Thanks for the patch, but I believe it was insufficiently tested :-/
> diff --git a/package/linux-tools/linux-tool-hv_vss_daemon.mk.in b/package/linux-tools/linux-tool-hv_vss_daemon.mk.in
> new file mode 100644
> index 0000000..2de13a7
> --- /dev/null
> +++ b/package/linux-tools/linux-tool-hv_vss_daemon.mk.in
> @@ -0,0 +1,34 @@
> +################################################################################
> +#
> +# hv_vss_daemon
> +#
> +################################################################################
> +
> +LINUX_TOOLS += hv_vss_daemon
> +
> +HV_VSS_DAEMON_MAKE_OPTS = CROSS=$(TARGET_CROSS)
This is not sufficient, with just this, the user-space program is
compiled with the host compiler, and therefore the build fails with:
ERROR: architecture for "/usr/sbin/hv_vss_daemon" is "Advanced Micro Devices X86-64", should be "ARM"
To fix this, don't pass CROSS=, but just pass $(LINUX_MAKE_FLAGS), just
like most other linux-tools makefiles are doing.
> +define HV_VSS_DAEMON_INSTALL_INIT_SYSTEMD
This cannot work, as it will never be called: hv-vss-daemon is not a
package from the point of view of Buildroot. What is a package is
"linux-tools".
The reason why HV_VSS_DAEMON_INSTALL_TARGET_CMDS works is because we
have some special logic in package/linux-tools/linux-tools.mk:
LINUX_TOOLS_POST_INSTALL_TARGET_HOOKS += $(foreach tool,$(LINUX_TOOLS),\
$(if $(BR2_PACKAGE_LINUX_TOOLS_$(call UPPERCASE,$(tool))),\
$(call UPPERCASE,$(tool))_INSTALL_TARGET_CMDS))
but there is nothing like this for _INSTALL_INIT_SYSTEMD, so I don't
see how this variable could have ever been called.
Did you actually test this, and verified that the systemd unit was
installed as expected ?
Thanks,
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
More information about the buildroot
mailing list