On Wed, Jul 08, 2009 at 03:11:45PM +0300, Avi Kivity wrote:
> On 07/08/2009 10:59 AM, Michael S. Tsirkin wrote:
>>
>>> @@ -337,10 +346,12 @@ int msix_init(struct PCIDevice *dev, unsigned short
>>> nentries,
>>> if (nentries> MSIX_MAX_ENTRIES)
>>> return -EINVAL;
>>>
>>> +#ifdef KVM_CAP_IRQCHIP
>>> if (kvm_enabled()&& qemu_kvm_irqchip_in_kernel()) {
>>> dev->msix_irq_entries = qemu_malloc(nentries *
>>> sizeof
>>> *dev->msix_irq_entries);
>>> }
>>> +#endif
>>> dev->msix_entry_used = qemu_mallocz(MSIX_MAX_ENTRIES *
>>> sizeof *dev->msix_entry_used);
>>>
>>> @@ -454,10 +465,13 @@ void msix_notify(PCIDevice *dev, unsigned vector)
>>> msix_set_pending(dev, vector);
>>> return;
>>> }
>>> +
>>> +#ifdef KVM_CAP_IRQCHIP
>>> if (kvm_enabled()&& qemu_kvm_irqchip_in_kernel()) {
>>> kvm_set_irq(dev->msix_irq_entries[vector].gsi, 1, NULL);
>>> return;
>>> }
>>> +#endif
>>>
>>> address = pci_get_long(table_entry + MSIX_MSG_UPPER_ADDR);
>>> address = (address<< 32) | pci_get_long(table_entry + MSIX_MSG_ADDR);
>>>
>>
>> I think it's time we stopped worrying about builds against old kernel
>> headers or without them. What do we gain from it?
>>
>
> qemu upstream doesn't carry its own headers, so it we want to merge, we
> need to work against old headers.
Was there ever discussion on this? I think the right thing to do is to
add own headers to qemu upstream.
>> I believe that the right thing to do is to define kvm_enabled as a macro
>> returning 0, and let compiler optimize the code out.
>>
>
> Doesn't work with -O0 (or if it does, we can't count on it).
With -O0 you get a ton of dead code anyway. Who cares?
--
MST
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html