On 07/14/2015 11:44 AM, Thomas Gleixner wrote:
On Tue, 14 Jul 2015, Boris Ostrovsky wrote:
Prevent allocation and freeing of interrupt descriptors accross cpu
hotplug.

This breaks Xen guests that allocate interrupt descriptors in .cpu_up().
And where exactly does XEN allocate those descriptors?

xen_cpu_up()
    xen_setup_timer()
        bind_virq_to_irqhandler()
            bind_virq_to_irq()
                xen_allocate_irq_dynamic()
                    xen_allocate_irqs_dynamic()
                        irq_alloc_descs()


There is also a similar pass via xen_cpu_up() -> xen_smp_intr_init()


Any chance this locking can be moved into arch code?
No.

(The patch doesn't appear to have any side effects for the down path since Xen
guests deallocate descriptors in __cpu_die()).
Exact place please.

Whose place? Where descriptors are deallocated?

__cpu_die()
    xen_cpu_die()
        xen_teardown_timer()
            unbind_from_irqhandler()
                unbind_from_irq()
                    __unbind_from_irq()
                        xen_free_irq()
                            irq_free_descs()
                                free_desc()

-boris

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to