Messages in this thread | | | Date | Tue, 9 Aug 2011 11:29:38 +0200 | From | Olaf Hering <> | Subject | Re: [Xen-devel] [PATCH 2/3] xen/pv-on-hvm kexec: rebind virqs to existing eventchannel ports |
| |
On Tue, Aug 09, Ian Campbell wrote:
> On Thu, 2011-08-04 at 17:20 +0100, Olaf Hering wrote: > > During a kexec boot some virqs such as timer and debugirq were already > > registered by the old kernel. The hypervisor will return -EEXISTS from > > the new EVTCHNOP_bind_virq request and the BUG in bind_virq_to_irq() > > triggers. Catch the -EEXISTS error and loop through all possible ports to find > > what port belongs to the virq/cpu combo. > > Would it be better to proactively just query the status of all event > channels early on, like you do in find_virq, and setup the irq info > structures as appropriate? Rather than waiting for an -EEXISTS I mean.
Doing one hypercall in the common case is cheaper than doing a dozen in the kexec case.
If you prefer I will rearrange this part and query first.
Olaf
| |