Re: Linux 4.9.6 ( Restore IO-APIC irq_chip retrigger callback , breaks my box )

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 13 Feb 2017, Linus Torvalds wrote:

> On Mon, Feb 13, 2017 at 12:43 PM, Borislav Petkov <bp@xxxxxxxxx> wrote:
> >
> > FWIW, it really looks like something's tickling this in Gabriel's
> > .config.
> >
> > [    8.652522] genirq: Flags mismatch irq 4. 00000000 (serial) vs. 00000080 (goldfish_pdev_bus)
> 
> How the hell is that "goldfish_pdev_bus" thing there at all?
> 
> And I'm not talking about the driver being enabled, I'm talking about
> the bus probe finding such a device in the first place?
> 
> That thing is supposed to only trigger on virtual hardware in QEMU.
> But it must have actually probed successfully in order to have an
> interrupt. How is that thing supposed to match anything>?

That's easy.

arch/x86/platform/goldfish/goldfish.c

static int __init goldfish_init(void)
{
        platform_device_register_simple("goldfish_pdev_bus", -1,
                                                goldfish_pdev_bus_resources, 2);
        return 0;
}
device_initcall(goldfish_init);

So it unconditionallyt registers that platform device, which has IRQ 4 as
irq resource and the driver happily matches on the platform devices.

Wonderful crap, isn't it? It should be made 'depend on BROKEN'.

Thanks,

	tglx
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]