Messages in this thread | | | Date | Tue, 28 Jan 2014 14:36:31 +0000 | From | Julien Grall <> | Subject | Re: [PATCH] xen/events: xen_evtchn_fifo_init can be called very late |
| |
On 01/28/2014 02:30 PM, Stefano Stabellini wrote: > On Tue, 28 Jan 2014, David Vrabel wrote: >> On 28/01/14 00:34, Julien Grall wrote: >>> On ARM, xen_init_IRQ (which calls xen_evtchn_fifo_init) is called after >>> all CPUs are online. It would mean that the notifier will never be called. >> >> Why does ARM call xen_init_IRQ() so late? Is it possible to call it >> earlier when only the boot CPU is online? There are problems with >> attempting to init FIFO event channels after all CPUs are online. >> >> If evtchn_fifo_init_control_block(cpu) fails on anything other than the >> first CPU, that CPU will be unable to receive any events. Xen will have >> been switched to FIFO mode and it is not possible to revert back to >> 2-level mode. > > We simply didn't need to be called that early. > Most of xen_guest_init could be moved to an early_initcall, if that is > necessary. >
I'm actually working on a patch to move xen_init_IRQ() in early_initcall.
-- Julien Grall
| |