Hi All, I wanted to know if a clock interrupt from any of the guest OS interrupt/preempt a hypervisor call in xen? Eg: say the disk access hypercall is in progress and a guest OS on another domain generates a clock interrupt, can this interrupt be handled in the middle of the hypervisor call or does it have to wait? Thanks, Sowmya. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
On 21 Feb 2006, at 07:39, sowmya dayanand wrote:> Hi All, > > I wanted to know if a clock interrupt from any of the guest OS > interrupt/preempt a hypervisor call in xen? > > Eg: say the disk access hy per call is in progress and a guest OS on > another domain generates a clock interrupt, can this interrupt be > handled in the middle of the hypervisor call or does it have to wait?There is no disc access hypercall as Xen does not do I/O itself. Long-lived hypercalls can be voluntarily preempted by events. The hypercall is resumed without the guest needing to do anything special. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Is there a flag that the long-lived hypercalls set to indicate that they can be preempted? Also is the flag per-domain to indicate that the hypercall is in progress in the particular domain? Thanks, Sowmya. On 2/21/06, Keir Fraser <Keir.Fraser@cl.cam.ac.uk> wrote:> > > On 21 Feb 2006, at 07:39, sowmya dayanand wrote: > > > Hi All, > > > > I wanted to know if a clock interrupt from any of the guest OS > > interrupt/preempt a hypervisor call in xen? > > > > Eg: say the disk access hy per call is in progress and a guest OS on > > another domain generates a clock interrupt, can this interrupt be > > handled in the middle of the hypervisor call or does it have to wait? > > There is no disc access hypercall as Xen does not do I/O itself. > Long-lived hypercalls can be voluntarily preempted by events. The > hypercall is resumed without the guest needing to do anything special. > > -- Keir > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
On 28 Feb 2006, at 19:22, sowmya dayanand wrote:> Is there a flag that the long-lived hypercalls set to indicate that > they can be preempted? Also is the flag per-domain to indicate that > the hypercall is in progress in the particular domain?Preemption is voluntary. Long-lived hypercalls poll for pending events / work to do. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
My understanding is that 1) There will be only one hypercall at any point of time( there is no queue). Is this right? 2) This hypercall can poll for events/work to do in case it is preemptable. Is there any way that the hypercall can be made non-preemptable? Thanks, Sowmya. On 2/28/06, Keir Fraser <Keir.Fraser@cl.cam.ac.uk> wrote:> > > On 28 Feb 2006, at 19:22, sowmya dayanand wrote: > > > Is there a flag that the long-lived hypercalls set to indicate that > > they can be preempted? Also is the flag per-domain to indicate that > > the hypercall is in progress in the particular domain? > > Preemption is voluntary. Long-lived hypercalls poll for pending events > / work to do. > > -- Keir > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
________________________________ From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of sowmya dayanand Sent: 28 February 2006 23:10 To: Keir Fraser Cc: Xen-devel@lists.xensource.com Subject: Re: [Xen-devel] Clock interrupts + hypervisor calls My understanding is that 1) There will be only one hypercall at any point of time( there is no queue). Is this right? No. In an SMP system there can be more than one Hypercall active at any given time - one per CPU. 2) This hypercall can poll for events/work to do in case it is preemptable. Is there any way that the hypercall can be made non-preemptable? Yes, you remove the poll-call. This will of course make the hypercall non-preemptable and it was probably made preemptable for a very good reason [lile somone found that it''s working a lot better if you allow preemption at this point], so it''s probably not such a great idea to do this. -- Mats Thanks, Sowmya. On 2/28/06, Keir Fraser <Keir.Fraser@cl.cam.ac.uk> wrote: On 28 Feb 2006, at 19:22, sowmya dayanand wrote: > Is there a flag that the long-lived hypercalls set to indicate that > they can be preempted? Also is the flag per-domain to indicate that > the hypercall is in progress in the particular domain? Preemption is voluntary. Long-lived hypercalls poll for pending events / work to do. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel