On 24 March 2013 19:17, Michael S. Tsirkin <m...@redhat.com> wrote:
> On Sun, Mar 24, 2013 at 04:58:37PM +0100, Aurelien Jarno wrote:
>> On Sun, Mar 24, 2013 at 11:32:30AM +0000, Peter Maydell wrote:
>> > I've provided a property for enabling the old broken IRQ mapping;
>> > this can be enabled with the command line option:
>> >       -global versatile_pci.broken-irq-mapping=1
>> >
>> > (If anybody wants to suggest a better way of handling this please do.)
>>
>> Do you have a pointer to the corresponding kernel patch? Is it possible
>> to get the kernel to detect if it should use the correct or the broken
>> IRQ mapping?
>
> Alternatively, or additionally, how about detecting the correct or
> the incorrect kernel and updating the mapping?
> For example, maybe we could do this using the
> IRQ value written into the device pci config register?

Yeah, ideally being able to detect the buggy kernel would be good;
I can't see anything at the controller level that would do though,
and I don't really know enough about PCI to know about generic
PCI stuff that would work. (Why would the OS need to tell the
device anything about its IRQ if it's hardwired?)

> If we can't find anything, maybe add our own register
> so the same qemu config can support old and new kernels?

Then the new kernel wouldn't work on real hardware...

-- PMM

Reply via email to