From patchwork Wed Jun 22 21:37:19 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Kiszka X-Patchwork-Id: 907402 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter2.kernel.org (8.14.4/8.14.4) with ESMTP id p5MLbTxR017238 for ; Wed, 22 Jun 2011 21:37:29 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758968Ab1FVVh1 (ORCPT ); Wed, 22 Jun 2011 17:37:27 -0400 Received: from fmmailgate01.web.de ([217.72.192.221]:58811 "EHLO fmmailgate01.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758920Ab1FVVh0 (ORCPT ); Wed, 22 Jun 2011 17:37:26 -0400 Received: from smtp03.web.de ( [172.20.0.65]) by fmmailgate01.web.de (Postfix) with ESMTP id 287C3191EF9BC; Wed, 22 Jun 2011 23:37:25 +0200 (CEST) Received: from [88.65.252.133] (helo=mchn199C.mchp.siemens.de) by smtp03.web.de with asmtp (TLSv1:AES256-SHA:256) (WEB.DE 4.110 #2) id 1QZV6y-0001KQ-00; Wed, 22 Jun 2011 23:37:25 +0200 Message-ID: <4E02608F.7010500@web.de> Date: Wed, 22 Jun 2011 23:37:19 +0200 From: Jan Kiszka User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666 MIME-Version: 1.0 To: Stefan Weil CC: Anthony Liguori , kvm@vger.kernel.org, Marcelo Tosatti , Alexander Graf , qemu-devel@nongnu.org, Avi Kivity Subject: Re: [PATCH 03/12] Switch build system to accompanied kernel headers References: <4E0255D7.9080202@mail.berlios.de> In-Reply-To: <4E0255D7.9080202@mail.berlios.de> X-Enigmail-Version: 1.1.2 X-Sender: jan.kiszka@web.de X-Provags-ID: V01U2FsdGVkX1/Tg7A4r9jB28pNc6sqYSYptFBhI25NiNwUM++N LFR8Z8A7ACEN1RtrCdz9BMh4D/pAMMlqGEN/xDS3fJ0/kEoyRm vlNKKcF8Q= Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter2.kernel.org [140.211.167.43]); Wed, 22 Jun 2011 21:37:30 +0000 (UTC) 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 >> Signed-off-by: Jan Kiszka >> --- >> 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: 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 /linux-headers/asm became)? Then we would have to link all files in the arch header dir individually. Jan 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