[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v3] tools: add option to explicitly enable VirtFS in QEMU build



Ping?

> -----Original Message-----
> From: Paul Durrant [mailto:paul.durrant@xxxxxxxxxx]
> Sent: 11 September 2018 16:01
> To: xen-devel@xxxxxxxxxxxxxxxxxxxx
> Cc: Paul Durrant <Paul.Durrant@xxxxxxxxxx>; Andrew Cooper
> <Andrew.Cooper3@xxxxxxxxxx>; George Dunlap <George.Dunlap@xxxxxxxxxx>; Ian
> Jackson <Ian.Jackson@xxxxxxxxxx>; Jan Beulich <jbeulich@xxxxxxxx>; Julien
> Grall <julien.grall@xxxxxxx>; Konrad Rzeszutek Wilk
> <konrad.wilk@xxxxxxxxxx>; Stefano Stabellini <sstabellini@xxxxxxxxxx>; Tim
> (Xen.org) <tim@xxxxxxx>; Wei Liu <wei.liu2@xxxxxxxxxx>
> Subject: [PATCH v3] tools: add option to explicitly enable VirtFS in QEMU
> build
> 
> 9pfs support has been a documented feature since Xen 4.9, but QEMU will
> not be built with backend support unless VirtFS is enabled, which is
> predicated on the libcap and libattr dev packages being installed. This is
> not obvious to anyone intending to use 9pfs.
> 
> This patch adds an 'enable-9pfs' option to configure which, if specified,
> will cause '--enable-virtfs' to be passed to QEMU's configure. This will
> cause the dependency on libcap and libattr to be called out if the
> packages
> are not in installed.
> 
> For completeness, specifying 'disable-9pfs' will cause '--disable-virtfs'
> to
> be passed to QEMU's confgure and not specifying an option will keep the
> previous behaviour of predicating VirtFS on whether the libcap and libattr
> packages are installed.
> 
> Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx>
> ---
> Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> Cc: George Dunlap <George.Dunlap@xxxxxxxxxxxxx>
> Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
> Cc: Jan Beulich <jbeulich@xxxxxxxx>
> Cc: Julien Grall <julien.grall@xxxxxxx>
> Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
> Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>
> Cc: Tim Deegan <tim@xxxxxxx>
> Cc: Wei Liu <wei.liu2@xxxxxxxxxx>
> 
> v3:
>  - Modify configure.ac and generate configure.
> 
> v2:
>  - Add the configure option rather then enabling VirtFS in all Linux
> builds.
> ---
>  config/Tools.mk.in |  1 +
>  tools/Makefile     | 10 +++++++++-
>  tools/configure    | 17 ++++++++++++++++-
>  tools/configure.ac |  9 ++++++++-
>  4 files changed, 34 insertions(+), 3 deletions(-)
> 
> diff --git a/config/Tools.mk.in b/config/Tools.mk.in
> index 0964f6f9e9..bdba087af0 100644
> --- a/config/Tools.mk.in
> +++ b/config/Tools.mk.in
> @@ -62,6 +62,7 @@ SYSTEMD_CFLAGS      := @SYSTEMD_CFLAGS@
>  SYSTEMD_LIBS        := @SYSTEMD_LIBS@
>  XEN_SYSTEMD_DIR     := @SYSTEMD_DIR@
>  XEN_SYSTEMD_MODULES_LOAD := @SYSTEMD_MODULES_LOAD@
> +CONFIG_9PFS         := @ninepfs@
> 
>  LINUX_BACKEND_MODULES := @LINUX_BACKEND_MODULES@
> 
> diff --git a/tools/Makefile b/tools/Makefile
> index 67977ad850..c903d6a63e 100644
> --- a/tools/Makefile
> +++ b/tools/Makefile
> @@ -232,6 +232,13 @@ subdir-all-qemu-xen-dir: qemu-xen-dir-find
>       else \
>               enable_trace_backend='' ; \
>       fi ; \
> +     if [ "$(CONFIG_9PFS)" = "y" ]; then \
> +             virtfs='--enable-virtfs' ; \
> +     elif [ "$(CONFIG_9PFS)" = "n" ]; then \
> +             virtfs='--disable-virtfs' ; \
> +     else \
> +             virtfs='' ; \
> +     fi ; \
>       PKG_CONFIG_PATH=$(XEN_ROOT)/tools/pkg-
> config$${PKG_CONFIG_PATH:+:$${PKG_CONFIG_PATH}} \
>       $$source/configure --enable-xen --target-list=i386-softmmu \
>               $(QEMU_XEN_ENABLE_DEBUG) \
> @@ -279,7 +286,8 @@ subdir-all-qemu-xen-dir: qemu-xen-dir-find
>               --python=$(PYTHON) \
>               $(CONFIG_QEMUU_EXTRA_ARGS) \
>               --cpu=$(IOEMU_CPU_ARCH) \
> -             $(IOEMU_CONFIGURE_CROSS); \
> +             $(IOEMU_CONFIGURE_CROSS) \
> +             $$virtfs; \
>       $(MAKE) all
> 
>  subdir-install-qemu-xen-dir: subdir-all-qemu-xen-dir
> diff --git a/tools/configure b/tools/configure
> index 27c8d054ab..acbcf9eb3e 100755
> --- a/tools/configure
> +++ b/tools/configure
> @@ -624,6 +624,7 @@ ac_includes_default="\
> 
>  ac_subst_vars='LTLIBOBJS
>  LIBOBJS
> +ninepfs
>  SYSTEMD_LIBS
>  SYSTEMD_CFLAGS
>  SYSTEMD_MODULES_LOAD
> @@ -820,6 +821,7 @@ with_xenstored
>  enable_systemd
>  with_systemd
>  with_systemd_modules_load
> +enable_9pfs
>  '
>        ac_precious_vars='build_alias
>  host_alias
> @@ -1500,6 +1502,8 @@ Optional Features:
>    --disable-ipxe          Enable in-tree IPXE, (DEFAULT is on if rombios
> is
>                            enabled, otherwise off, see also --with-system-
> ipxe)
>    --enable-systemd        Enable systemd support (default is DISABLED)
> +  --enable-9pfs           Explicitly enable 9pfs support in QEMU build
> +                          (default is to defer to QEMU configure default)
> 
>  Optional Packages:
>    --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
> @@ -9799,6 +9803,18 @@ if test "x$systemd" = "xy"; then :
> 
>  fi
> 
> +# Check whether --enable-9pfs was given.
> +if test "${enable_9pfs+set}" = set; then :
> +  enableval=$enable_9pfs; if test "x$enable_9pfs" = "xyes"; then :
> +  ninepfs=y
> +else
> +  ninepfs=n
> +fi
> +fi
> +
> +
> +
> +
>  cat >confcache <<\_ACEOF
>  # This file is a shell script that caches the results of configure
>  # tests run on this system so they can be shared between configure
> @@ -11103,4 +11119,3 @@ if test -n "$ac_unrecognized_opts" && test
> "$enable_option_checking" != no; then
>  $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts"
> >&2;}
>  fi
> 
> -
> diff --git a/tools/configure.ac b/tools/configure.ac
> index bca2545280..e7d2e6f4ff 100644
> --- a/tools/configure.ac
> +++ b/tools/configure.ac
> @@ -486,5 +486,12 @@ AS_IF([test "x$systemd" = "xy"], [
>      ])
>  ])
> 
> -AC_OUTPUT()
> +AC_ARG_ENABLE([9pfs],
> +    AS_HELP_STRING([--enable-9pfs],
> +                   [Explicitly enable 9pfs support in QEMU build (default
> is to defer to QEMU configure default)]),
> +    [AS_IF([test "x$enable_9pfs" = "xyes"], [ninepfs=y], [ninepfs=n])],[
> +])
> 
> +AC_SUBST(ninepfs)
> +
> +AC_OUTPUT()
> --
> 2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.