How is the interrupt generated for a platform-pci device on
domU when a notify_via_evtchn is done from dom0 to domU?
Is it this part of the code that is involved
=========================================================
case ECS_INTERDOMAIN:
rd = lchn->u.interdomain.remote_dom;
rport =
lchn->u.interdomain.remote_port;
rchn =
evtchn_from_port(rd, rport);
rvcpu =
rd->vcpu[rchn->notify_vcpu_id];
if (
rchn->consumer_is_xen )
{
/* Xen consumers need notification only if they are blocked. */
if ( test_and_clear_bit(_VPF_blocked_in_xen,
&rvcpu->pause_flags)
)
vcpu_wake(rvcpu);
}
else
{
evtchn_set_pending(rvcpu, rport);
}
break;
===========================================================
Can somebody give a better explanation of how the interrupt
is generated?