qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Jan Kiszka <jan.kiszka@web.de>
To: Stefan Weil <weil@mail.berlios.de>
Cc: Anthony Liguori <aliguori@us.ibm.com>,
	kvm@vger.kernel.org, Marcelo Tosatti <mtosatti@redhat.com>,
	Alexander Graf <agraf@suse.de>,
	qemu-devel@nongnu.org, Avi Kivity <avi@redhat.com>
Subject: Re: [Qemu-devel] [PATCH 03/12] Switch build system to accompanied kernel headers
Date: Wed, 22 Jun 2011 23:37:19 +0200	[thread overview]
Message-ID: <4E02608F.7010500@web.de> (raw)
In-Reply-To: <4E0255D7.9080202@mail.berlios.de>

[-- Attachment #1: Type: text/plain, Size: 3538 bytes --]

On 2011-06-22 22:51, Stefan Weil wrote:
> Am 08.06.2011 16:10, schrieb Jan Kiszka:
>> This helps reducing our build-time checks for feature support in the
>> available Linux kernel headers. And it helps users that do not have
>> sufficiently recent headers installed on their build machine.
>>
>> Consequently, the patch removes and build-time checks for kvm and vhost
>> in configure, the --kerneldir switch, and KVM_CFLAGS. Kernel headers are
>> supposed to be provided by QEMU only.
>>
>> s390 needs some extra love as it carries redefinitions from kernel
>> headers.
>>
>> CC: Alexander Graf <agraf@suse.de>
>> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>> ---
>> Makefile.target | 4 +-
>> configure | 151 ++++++----------------------------------------
>> target-s390x/cpu.h | 10 ---
>> target-s390x/op_helper.c | 1 +
>> 4 files changed, 21 insertions(+), 145 deletions(-)
>>
>> diff --git a/Makefile.target b/Makefile.target
>> index 5c22df8..be9c0e8 100644
>> --- a/Makefile.target
>> +++ b/Makefile.target
>> @@ -14,7 +14,7 @@ endif
>>
>> TARGET_PATH=$(SRC_PATH)/target-$(TARGET_BASE_ARCH)
>> $(call set-vpath, $(SRC_PATH):$(TARGET_PATH):$(SRC_PATH)/hw)
>> -QEMU_CFLAGS+= -I.. -I$(TARGET_PATH) -DNEED_CPU_H
>> +QEMU_CFLAGS+= -I.. -I../linux-headers -I$(TARGET_PATH) -DNEED_CPU_H
>>
>> include $(SRC_PATH)/Makefile.objs
>>
>> @@ -37,8 +37,6 @@ ifndef CONFIG_HAIKU
>> LIBS+=-lm
>> endif
>>
>> -kvm.o kvm-all.o vhost.o vhost_net.o kvmclock.o:
>> QEMU_CFLAGS+=$(KVM_CFLAGS)
>> -
>> config-target.h: config-target.h-timestamp
>> config-target.h-timestamp: config-target.mak
>>
>> diff --git a/configure b/configure
>> index d38b952..0e1dc46 100755
>> --- a/configure
>> +++ b/configure
>> @@ -113,8 +113,7 @@ curl=""
>> curses=""
>> docs=""
>> fdt=""
>> -kvm=""
>> -kvm_para=""
>> +kvm="yes"
>> nptl=""
> 
> Are you planning to add kvm support for all platforms which don't
> support it today?

That would mean replacing all their kernels with Linux. Will take a bit
longer.

I simply overshot with my cleanups:

diff --git a/configure b/configure
index 3286e33..e6847c4 100755
--- a/configure
+++ b/configure
@@ -113,7 +113,7 @@ curl=""
 curses=""
 docs=""
 fdt=""
-kvm="yes"
+kvm=""
 nptl=""
 sdl=""
 vnc="yes"
@@ -129,7 +129,7 @@ xen=""
 xen_ctrl_version=""
 linux_aio=""
 attr=""
-vhost_net="yes"
+vhost_net=""
 xfs=""

 gprof="no"
@@ -457,6 +457,8 @@ Haiku)
   linux="yes"
   linux_user="yes"
   usb="linux"
+  kvm="yes"
+  vhost_net="yes"
   if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
     audio_possible_drivers="$audio_possible_drivers fmod"
   fi

Will post this as a patch tomorrow.

> If not, kvm="yes" should be restricted to platforms with kvm support.
> 
> Otherwise, QEMU builds will fail very early:
> 
>  ERROR: Host kernel lacks signalfd() support,
>  but KVM depends on it when the IO thread is disabled.
> 
> Of course, users of those non-kvm platforms can set --disable-kvm,
> but I don't think that is the correct solution.
> 
> Even with kvm disabled, builds still fail for non-kvm systems:
> 
>  In file included from /qemu/hw/kvmclock.c:21:
>  /qemu/linux-headers/linux/kvm_para.h:26:26: warning: asm/kvm_para.h: No
> such file or directory

That indicates symlink emulation under Windows does not support
directories. Can you confirm this (check what
<builddir>/linux-headers/asm became)? Then we would have to link all
files in the arch header dir individually.

Jan



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 259 bytes --]

  reply	other threads:[~2011-06-22 21:37 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-08 14:10 [Qemu-devel] [PATCH 00/12] [uq/master] Import linux headers and some cleanups Jan Kiszka
2011-06-08 14:10 ` [Qemu-devel] [PATCH 01/12] Add kernel header update script Jan Kiszka
2011-06-08 14:33   ` Peter Maydell
2011-06-08 14:39     ` Jan Kiszka
2011-06-08 14:51       ` Peter Maydell
2011-06-08 15:06   ` [Qemu-devel] [PATCH v2 " Jan Kiszka
2011-06-08 15:57     ` Peter Maydell
2011-06-08 16:22   ` [Qemu-devel] [PATCH v3 " Jan Kiszka
2011-06-08 17:30     ` Peter Maydell
2011-06-08 14:10 ` [Qemu-devel] [PATCH 02/12] Import kernel headers Jan Kiszka
2011-06-08 14:10 ` [Qemu-devel] [PATCH 03/12] Switch build system to accompanied " Jan Kiszka
2011-06-14 11:11   ` Alexander Graf
2011-06-14 11:21     ` Jan Kiszka
2011-06-14 11:28       ` Alexander Graf
2011-06-14 11:32         ` Jan Kiszka
2011-06-22 20:51   ` Stefan Weil
2011-06-22 21:37     ` Jan Kiszka [this message]
2011-06-23  5:37       ` Stefan Weil
2011-06-23  7:18         ` Jan Kiszka
2011-06-23  8:05           ` [Qemu-devel] [PATCH] Fix fallouts from Linux header inclusion Jan Kiszka
2011-06-23 10:59             ` Andreas Färber
2011-06-23 15:14             ` Stefan Weil
2011-06-26 18:01             ` Blue Swirl
2011-06-08 14:10 ` [Qemu-devel] [PATCH 04/12] kvm: Drop CONFIG_KVM_PARA Jan Kiszka
2011-06-08 14:10 ` [Qemu-devel] [PATCH 05/12] kvm: ppc: Drop CONFIG_KVM_PPC_PVR Jan Kiszka
2011-06-14 11:06   ` Alexander Graf
2011-06-08 14:11 ` [Qemu-devel] [PATCH 06/12] kvm: Drop useless zero-initializations Jan Kiszka
2011-06-08 14:11 ` [Qemu-devel] [PATCH 07/12] kvm: Drop KVM_CAP build dependencies Jan Kiszka
2011-06-14 11:05   ` Alexander Graf
2011-06-14 11:07     ` Jan Kiszka
2011-06-14 11:17       ` Alexander Graf
2011-06-14 11:19         ` Jan Kiszka
2011-06-14 11:25           ` Alexander Graf
2011-06-08 14:11 ` [Qemu-devel] [PATCH 08/12] kvm: x86: " Jan Kiszka
2011-06-08 14:11 ` [Qemu-devel] [PATCH 09/12] kvm: ppc: " Jan Kiszka
2011-06-10 18:32   ` Eduardo Habkost
2011-06-11  7:45     ` Jan Kiszka
2011-06-14 11:07   ` Alexander Graf
2011-06-08 14:11 ` [Qemu-devel] [PATCH 10/12] kvm: Clean up stubs Jan Kiszka
2011-06-08 14:11 ` [Qemu-devel] [PATCH 11/12] kvm: x86: Pass KVMState to kvm_arch_get_supported_cpuid Jan Kiszka
2011-06-09 17:33   ` Eduardo Habkost
2011-06-09 17:41     ` Jan Kiszka
2011-06-09 18:08       ` Eduardo Habkost
2011-06-09 19:53         ` Jan Kiszka
2011-06-08 14:11 ` [Qemu-devel] [PATCH 12/12] Remove unneeded kvm.h from cpu-exec.c Jan Kiszka
2011-06-20 18:24 ` [Qemu-devel] [PATCH 00/12] [uq/master] Import linux headers and some cleanups Marcelo Tosatti

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4E02608F.7010500@web.de \
    --to=jan.kiszka@web.de \
    --cc=agraf@suse.de \
    --cc=aliguori@us.ibm.com \
    --cc=avi@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=mtosatti@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=weil@mail.berlios.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).