|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] Quick hack to make sure that pirqs and interdomain event
# HG changeset patch
# User sos22@xxxxxxxxxxxxxxxxxxxx
# Node ID f3f8452978219763b9e5dde244d932cf6a49d9c0
# Parent bd1642e8599ed685c31a1fcef14062d09af45880
Quick hack to make sure that pirqs and interdomain event channels are
all bound to vcpu0, rather vcpu0 99% of the time and an entirely
random otherwise. This make sure things work nicely when you start
taking vcpus offline, since vcpu0 can't go offline; the correct
solution is to allow domains to change evtchn<->vcpu bindings.
Signed-off-by: Steven Smith, sos22@xxxxxxxxxxxx
diff -r bd1642e8599e -r f3f845297821 xen/common/event_channel.c
--- a/xen/common/event_channel.c Wed Jul 6 18:34:16 2005
+++ b/xen/common/event_channel.c Thu Jul 7 09:27:25 2005
@@ -220,10 +220,12 @@
chn1->u.interdomain.remote_dom = d2;
chn1->u.interdomain.remote_port = (u16)port2;
+ chn1->notify_vcpu_id = 0;
chn1->state = ECS_INTERDOMAIN;
chn2->u.interdomain.remote_dom = d1;
chn2->u.interdomain.remote_port = (u16)port1;
+ chn2->notify_vcpu_id = 0;
chn2->state = ECS_INTERDOMAIN;
out:
@@ -324,8 +326,10 @@
chn = evtchn_from_port(d, port);
+ chn->notify_vcpu_id = 0;
+
d->pirq_to_evtchn[pirq] = port;
- rc = pirq_guest_bind(d->vcpu[chn->notify_vcpu_id], pirq,
+ rc = pirq_guest_bind(d->vcpu[0], pirq,
!!(bind->flags & BIND_PIRQ__WILL_SHARE));
if ( rc != 0 )
{
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] Quick hack to make sure that pirqs and interdomain event channels are,
Xen patchbot -unstable <=
|
|
|
|
|