Richard W.M. Jones
2009-Sep-22 16:20 UTC
[Libguestfs] [PATCH] Rejig configure.ac tests for qemu vmchannel support.
The change to "null vmchannel" didn't get reflected in the configure script which still checks for vmchannel in qemu. This patch tidies up this part of the configure script so we don't fail, provided we have support for user mode networking (which is required for null vmchannel). This patch didn't make it into 1.0.71. Rich. -- Richard Jones, Emerging Technologies, Red Hat http://et.redhat.com/~rjones Read my programming blog: http://rwmj.wordpress.com Fedora now supports 75 OCaml packages (the OPEN alternative to F#) http://cocan.org/getting_started_with_ocaml_on_red_hat_and_fedora -------------- next part -------------->From 2232555b9497d899d356627c612f212993e3c371 Mon Sep 17 00:00:00 2001From: Richard Jones <rjones at trick.home.annexia.org> Date: Tue, 22 Sep 2009 13:34:50 +0100 Subject: [PATCH] Rejig configure.ac tests for qemu vmchannel support. vmchannel is no longer required, so we shouldn't test for it. However we should test instead for user mode networking support. Also fix up the documentation / error messages. Always test for vmchannel and user mode networking support in qemu. This gives us more troubleshooting information if people report bugs. --- configure.ac | 43 ++++++++++++++++++++++++++++++++----------- 1 files changed, 32 insertions(+), 11 deletions(-) diff --git a/configure.ac b/configure.ac index 719ece7..e0516c5 100644 --- a/configure.ac +++ b/configure.ac @@ -157,38 +157,59 @@ AC_PATH_PROGS([QEMU],[$with_qemu],[no], test "x$QEMU" = "xno" && AC_MSG_ERROR([qemu must be installed]) AC_DEFINE_UNQUOTED([QEMU],["$QEMU"],[Location of qemu binary.]) -dnl Check that the chosen qemu has vmchannel support. -dnl http://lists.gnu.org/archive/html/qemu-devel/2009-02/msg01042.html +dnl Check that the chosen qemu has vmchannel support or we can +dnl fallback to null vmchannel (still using SLIRP). See the +dnl discussion in the README file. if test "x$vmchannel_test" != "xno"; then - AC_MSG_CHECKING([for "guestfwd" support in $QEMU]) + AC_MSG_CHECKING([for guestfwd support in $QEMU]) if $QEMU --help | grep -sq guestfwd; then AC_MSG_RESULT([yes]) + vmchannel_guestfwd=guestfwd else AC_MSG_RESULT([no]) - AC_MSG_CHECKING([for "-net channel" support in $QEMU]) + # Note that this test must be conditional on the previous + # test failing. This is because recent qemu will throw + # up an SDL window and hang if we try to run this test. + AC_MSG_CHECKING([for "-net channel" (old guestfwd) support in $QEMU]) vmchannelout=`$QEMU -net channel /dev/zero 2>&1 ||:` echo "vmchannel test command output: $vmchannelout" >&AS_MESSAGE_LOG_FD if echo "$vmchannelout" | grep -sq "vmchannel wrong port number" ; then AC_MSG_RESULT([yes]) + vmchannel_guestfwd=net_channel else AC_MSG_RESULT([no]) - AC_MSG_FAILURE( -[I did not find vmchannel support in $QEMU. + vmchannel_guestfwd=no + fi + fi + + AC_MSG_CHECKING([for "-net user" (user mode network) support in $QEMU]) + if $QEMU --help | grep -sq -- "-net user"; then + AC_MSG_RESULT([yes]) + vmchannel_net_user=yes + else + AC_MSG_RESULT([no]) + vmchannel_net_user=no + fi -vmchannel support is vital for libguestfs to operate. You need a version -of qemu >= 0.10, or the following patch backported to earlier versions: + if test "x$vmchannel_net_user" = "xno" -a "x$vmchannel_guestfwd" = "xno"; then + AC_MSG_FAILURE( +[I did not find user mode network or vmchannel support in +$QEMU. -http://lists.gnu.org/archive/html/qemu-devel/2009-02/msg01042.html +Either user mode networking or vmchannel support is vital for +libguestfs to operate. + +Please read the relevant section in the README file for more +information about this. You can override this test by setting the environment variable -vmchannel_test=no However if you don't have vmchannel support +vmchannel_test=no However if you don't have the right support in your qemu, then this just delays the pain. If I am using the wrong qemu or you want to compile qemu from source and install it in another location, then you should configure with the --with-qemu option. ]) - fi fi fi -- 1.6.2.5
Jim Meyering
2009-Sep-23 10:03 UTC
[Libguestfs] [PATCH] Rejig configure.ac tests for qemu vmchannel support.
Richard W.M. Jones wrote:> The change to "null vmchannel" didn't get reflected in the configure > script which still checks for vmchannel in qemu. > > This patch tidies up this part of the configure script so we don't > fail, provided we have support for user mode networking (which is > required for null vmchannel).> Subject: [PATCH] Rejig configure.ac tests for qemu vmchannel support.This looks fine. ACK
Maybe Matching Threads
- [PATCH] Remove explicit guestfs=10.0.2.4:6666 kernel command line parameter.
- [PATCH] tests: Conditionally skip UUID tests.
- [PATCH] tests: modprobe fat instead of ext2 module.
- [PATCH] tests: Use ISO instead of squashfs
- [PATCH] qemu: Upstream regression of -stdio serial option.