[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-ia64-devel] iosapic virtualisation
On Tue, 2006-01-31 at 12:29 +0100, Tristan Gingold wrote: > Hi, > > here is the path for iosapic virtualisation. > Currently this is just for review and comments. Hi Tristan, Looks pretty good. A few comments: * The unmask patch of iosapic_guest_write() doesn't check the domain before unmasking. Looks like maybe we could unmask interrupts on the wrong domain. * Please define a couple macros for the offset value used in xen_iosapic_write(), rather than using 0 & 1. * There are a couple of debug additions to linux-xen/iosapic.c not enclosed in #ifdef XEN. * The vector-to-rte lookup in xen_reflect_interrupt_to_domain() looks rather heavy weight. It seems like we should be able to construct the data structures for a direct look up here. I don't think we can afford to scan the rte list for every interrupt. * Assigning vectors as defined by the domain; I think this is covered by some of the comments included about future problems, but maybe we should address this one now. We should probably start out with separate vector spaces between xen and each domain and keep a mapping table between xen vectors (ie. what's actually programmed into the IOSAPIC RTE) and what the domains tried to program via iosapic_guest_write(). It's probably reasonable to assign xen vectors from highest to lowest such that xen will end up with the highest priority external interrupts, dom0 the next highest, and so on. * We need to paravirtualize reads of the IOSAPIC as well as writes. Since the IOSAPICs use a windowing register scheme, a domain reading an IOSAPIC could interfere with Xen writing or cause races with other domains. This will also enable us to hide the physical IOSAPIC structure if we need to at some point. I'll see if I can get this to build and run on my box. Thanks, Alex -- Alex Williamson HP Linux & Open Source Lab _______________________________________________ Xen-ia64-devel mailing list Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ia64-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |