[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 16/24] [xen-unstable.hg] xen hypercall to allow xenstore stubdom to be registered to handle VIRQ_DOM_EXC
New hypercall for dom0 to delegate a VIRQ handler. I sent these to Keir in an earlier state. See the explanation with xen_virq_handler_api. Signed-off-by: Diego Ongaro <diego.ongaro@xxxxxxxxxx> Signed-off-by: Alex Zeffertt <alex.zeffertt@xxxxxxxxxxxxx> --- diff -r 890d475c4591 xen/common/domctl.c --- a/xen/common/domctl.c Wed Mar 18 15:41:08 2009 +0000 +++ b/xen/common/domctl.c Wed Mar 18 15:50:30 2009 +0000 @@ -861,6 +861,20 @@ } break; + case XEN_DOMCTL_set_virq_handler: + { + struct domain *d; + + ret = -ESRCH; + d = rcu_lock_domain_by_id(op->domain); + if ( d != NULL ) + { + ret = set_global_virq_handler(d, (int) op->u.set_virq_handler.virq); + rcu_unlock_domain(d); + } + } + break; + default: ret = arch_do_domctl(op, u_domctl); break; diff -r 890d475c4591 xen/include/public/domctl.h --- a/xen/include/public/domctl.h Wed Mar 18 15:41:08 2009 +0000 +++ b/xen/include/public/domctl.h Wed Mar 18 15:50:30 2009 +0000 @@ -612,6 +612,13 @@ typedef struct xen_domctl_subscribe xen_domctl_subscribe_t; DEFINE_XEN_GUEST_HANDLE(xen_domctl_subscribe_t); +#define XEN_DOMCTL_set_virq_handler 30 +struct xen_domctl_set_virq_handler { + uint32_t virq; /* IN */ +}; +typedef struct xen_domctl_set_virq_handler xen_domctl_set_virq_handler_t; +DEFINE_XEN_GUEST_HANDLE(xen_domctl_set_virq_handler_t); + /* * Define the maximum machine address size which should be allocated * to a guest. @@ -686,6 +693,7 @@ struct xen_domctl_set_opt_feature set_opt_feature; struct xen_domctl_set_target set_target; struct xen_domctl_subscribe subscribe; + struct xen_domctl_set_virq_handler set_virq_handler; struct xen_domctl_debug_op debug_op; #if defined(__i386__) || defined(__x86_64__) struct xen_domctl_cpuid cpuid; _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |