This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] pv-on-hvm kexec, howto reregister timer interrupt

To: Ian Campbell <Ian.Campbell@xxxxxxxxxx>
Subject: Re: [Xen-devel] pv-on-hvm kexec, howto reregister timer interrupt
From: Olaf Hering <olaf@xxxxxxxxx>
Date: Sat, 23 Jul 2011 10:52:29 +0200
Cc: Keir Fraser <keir.xen@xxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Sat, 23 Jul 2011 01:54:31 -0700
Dkim-signature: v=1; a=rsa-sha1; c=relaxed/relaxed; t=1311411223; l=1341; s=domk; d=aepfle.de; h=In-Reply-To:Content-Type:MIME-Version:References:Subject:Cc:To:From: Date:X-RZG-CLASS-ID:X-RZG-AUTH; bh=v3o0NDpW/UC6Fe5h8GzGkcvzsp8=; b=MnvJRnoQIVoJKclQx7yrrNwX0G0fIB0BJ4sBKwgEGTgp6vrWXl66tr454GZBxYxisTu ZKqI6kzCCJSQtgUyBWniHpOusfcetVr0Ce/iIwNKLLyg0oZmtNAGFH/+4K0OKdsz8rKNJ dyDKk66p6zps2tysz6v+jiTS7BVVct/zCYw=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1311408105.4027.80.camel@xxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <CA502F84.1E717%keir.xen@xxxxxxxxx> <1311408105.4027.80.camel@xxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.21.rev5535 (2011-07-01)
On Sat, Jul 23, Ian Campbell wrote:

> On Sat, 2011-07-23 at 07:57 +0100, Keir Fraser wrote:
> > On 22/07/2011 19:49, "Olaf Hering" <olaf@xxxxxxxxx> wrote:
> > 
> > > What is the best way to reregister the timer interrupt in the kexec
> > > kernel in a pv-on-hvm guest? Right now the crash shown below happens
> > > because EVTCHNOP_bind_virq returns -EEXIST. Can the timer on the cpus be
> > > unregistered during shutdown? xen_teardown_timer() does not allow that
> > > for cpu #0.  I added some silly loop which tries to match vcpu/cpu in
> > > bind_virq_to_irq() using EVTCHNOP_status to find the currently used port
> > > number. This helps and booting proceeds, but I feel that cant be the
> > > right approach.
> > 
> > Sounbds like it's simply some Linux-guest issue here to be untangled. All
> > Xen requires you to do is EVTCHNOP_close the old virq-evtchn binding.
> That might be tricky to do in the target kernel, which may not know what
> needs closing. There's EVTCHNOP_reset which looks like it would be a
> sensible thing to call early on in the target but seems like it would
> close to much -- e.g. the xenstore evtchn?

After some more poking around in the reboot code path I have figured it
out, a syscore_ops has to be registerd to shutdown the irqs.
I will post some patches for review.


Xen-devel mailing list