On 15 August 2013 21:50, Guenter Roeck <li...@roeck-us.net> wrote: > On Thu, Aug 15, 2013 at 07:05:22PM +0100, Peter Maydell wrote: >> It needs to go in the same patch, because a kernel with the fixed >> irq remapping must also tell QEMU it is fixed; if you split the >> two then at the point between the two patches the kernel is >> broken for bisection purposes. >> > Thinking about it - is that really true ? My image with the > patch applied works just fine under qemu 1.5.2, and unless > I am missing something it won't work with qemu 1.4 anyway. > So what exactly is broken ?
You're OK unless the kernel happens to pick the same interrupt number to write to PCI_INTERRUPT_LINE as one of the previous broken kernel versions did (in which case QEMU will incorrectly assume you're a broken kernel). This can't happen with the way the kernel is currently picking interrupt numbers (ie with a straightforward relationship between h/w irqs and values written), but as I understand from Arnd there is a plan to move to a different approach ("sparse irqs") at which point this won't hold: http://lists.gnu.org/archive/html/qemu-devel/2013-03/msg04579.html So it's better for the kernel to make sure it gets the behaviour it wants rather than getting unpleasant surprises later. -- PMM