Messages in this thread | | | Date | Tue, 14 Jul 2015 12:03:14 -0400 | From | Boris Ostrovsky <> | Subject | Re: [patch 1/4] hotplug: Prevent alloc/free of irq descriptors during cpu up/down |
| |
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
| |