Re: [PATCH 2/2] msix: Pull in config.h for CONFIG_KVM

Alex Williamson
2010-10-23T21:01:50Z

On Sat, Oct 23, 2010 at 2:38 PM, Michael S. Tsirkin <mst@redhat.com> wrote:
> On Sat, Oct 23, 2010 at 12:42:44PM -0600, Alex Williamson wrote:
>> On Sat, 2010-10-23 at 19:29 +0200, Michael S. Tsirkin wrote:
>> > On Sat, Oct 23, 2010 at 10:52:43AM -0600, Alex Williamson wrote:
>> > > 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 <alex.williamson@redhat.com>
>> > > >
>> > > > 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
>> >
>> > This is hopefully fixed in the latest bits.
>> > bd8b215bce453706c3951460cc7e6627ccb90314
>>
>> Nope, my tree includes that.  It's not kvm_set_irq, it's kvm_msix_add,
>> which dereferences msix_irq_entries, which is only allocated in
>> msix_init if KVM_CAP_IRQCHIP is defined, which it's not.  Maybe you also
>> meant to remove the ifdef from msix_init?  I also note there's another
>> in msix_notify.  Thanks,
>>
>> Alex
>
> Not sure what's wrong:
> $git grep KVM_CAP_IRQCHIP origin/master -- hw/msix.c
> $
>
> http://git.kernel.org/?p=virt/kvm/qemu-kvm.git;a=blob;f=hw/msix.c;hb=HEAD
>
> also does not show any ifdefs.

Hmm, somehow my tree missed 763a04a920f1098e57ad6b46c91c3e531adc961d
Ignore this patch and I'll refresh again. Sorry for the noise.

Alex