WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH] Dont' round-robin the callback interrupt

To: Paul Durrant <Paul.Durrant@xxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH] Dont' round-robin the callback interrupt
From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Date: Mon, 12 Jul 2010 18:17:54 +0100
Cc: Tim Deegan <Tim.Deegan@xxxxxxxxxxxxx>
Delivery-date: Mon, 12 Jul 2010 10:18:31 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <291EDFCB1E9E224A99088639C47620227A476E68BE@xxxxxxxxxxxxxxxxxxxxxxxxx>
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>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Acsh2l51nUJdh1UOQtW3725Fv+EghQAAbrFIAABbDJYAAHW7YAABs2aF
Thread-topic: [Xen-devel] [PATCH] Dont' round-robin the callback interrupt
User-agent: Microsoft-Entourage/12.24.0.100205
On 12/07/2010 17:36, "Paul Durrant" <Paul.Durrant@xxxxxxxxxx> wrote:

>   When we connect our platform driver interrupt, Windows is at liberty to
> allocate vectors on as many or as few cpus as it wishes. I've seen cases where
> it will *not* allocate us a vector on vcpu 0, so we cannot force vcpu 0. Older
> frontends assume vcpu 0, but should function ok if the interrupt does not move
> around.
>   However, that's not the motivation for this patch. In the windows code, we
> only bind event channels to vcpu 0 since we cannot get callback interrupts on
> multiple vcpus simultaneously, since the interrupt is level sensitive. Thus
> round-robining is wasteful in terms of kicking certain data structures between
> caches (assuming a reasonably constant vcpu -> pcpu mapping).

Surely that argument can be made for any interrupt that is set up to
round-robin among multiple CPUs? Obviously in the PV drivers case the
event-channel IRQ is probably the only significant source of round-robin
interrupts. But I don't see that it's special in any other way.

 -- Keir



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel