From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=41385 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1P9hKq-0001PR-Tm for qemu-devel@nongnu.org; Sat, 23 Oct 2010 12:52:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1P9hKp-0007Do-Ni for qemu-devel@nongnu.org; Sat, 23 Oct 2010 12:52:48 -0400 Received: from mx1.redhat.com ([209.132.183.28]:11001) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1P9hKp-0007Dh-G1 for qemu-devel@nongnu.org; Sat, 23 Oct 2010 12:52:47 -0400 From: Alex Williamson In-Reply-To: <20101023161633.GA11488@redhat.com> References: <20101022193845.10161.52907.stgit@s20.home> <20101022204037.10161.83407.stgit@s20.home> <20101023161633.GA11488@redhat.com> Content-Type: text/plain; charset="UTF-8" Date: Sat, 23 Oct 2010 10:52:43 -0600 Message-ID: <1287852763.5129.5.camel@x201> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] Re: [PATCH 2/2] msix: Pull in config.h for CONFIG_KVM List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Michael S. Tsirkin" Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org On Sat, 2010-10-23 at 18:16 +0200, Michael S. Tsirkin wrote: > On Fri, Oct 22, 2010 at 02:40:39PM -0600, Alex Williamson wrote: > > We need to pull in config.h or else kvm.h doesn't pull in > > linux/config.h, which we need if we ever want KVM_CAP_IRQCHIP > > defined. This requires moving the object over to Makefile.target > > or else we can't find config-target.h > > > > Signed-off-by: Alex Williamson > > Why? We just moved it from .target to .objs, see > 889e30cc18e21f2091b77267dca8096d7dd34f8b. Maybe that's why it used to work. When building in the qemu-kvm.git tree, I'm not getting CONFIG_KVM defined, which means I'm not getting KVM_CAP_IRQCHIP defined, which results in msix_irq_entries not being allocated. Then when I call msix_vector_use, I get a seg fault. Something is broken there. Thanks, Alex > > --- > > > > Makefile.objs | 2 -- > > Makefile.target | 1 + > > hw/msix.c | 1 + > > 3 files changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/Makefile.objs b/Makefile.objs > > index ca2d2d0..c097d25 100644 > > --- a/Makefile.objs > > +++ b/Makefile.objs > > @@ -201,8 +201,6 @@ hw-obj-$(CONFIG_PIIX4) += piix4.o > > # PCI watchdog devices > > hw-obj-y += wdt_i6300esb.o > > > > -hw-obj-y += msix.o > > - > > # PCI network cards > > hw-obj-y += ne2000.o > > hw-obj-y += eepro100.o > > diff --git a/Makefile.target b/Makefile.target > > index 347ad6b..63da13b 100644 > > --- a/Makefile.target > > +++ b/Makefile.target > > @@ -185,6 +185,7 @@ obj-y += rwhandler.o > > obj-$(CONFIG_KVM) += kvm.o kvm-all.o > > obj-$(CONFIG_NO_KVM) += kvm-stub.o > > obj-y += memory.o > > +obj-y += msix.o > > > > LIBS+=-lz > > > > diff --git a/hw/msix.c b/hw/msix.c > > index 4122395..23256c9 100644 > > --- a/hw/msix.c > > +++ b/hw/msix.c > > @@ -11,6 +11,7 @@ > > * the COPYING file in the top-level directory. > > */ > > > > +#include "config.h" > > #include "hw.h" > > #include "msix.h" > > #include "pci.h"