Hello,
Something with interrupts in Xen and GuestOS in unclear to me:
Let''s take for example a case where a frame arrives and we have
interrupt 11
on the
physical device , the ETH NIC.
we get to do_irq() in xen/arch/x86/irq.c
Now there ,after acknowledging the irq controller (the 8259 APIC) ,
as also is done in a NON-XEN kernel,it performs a check:
if ( likely(desc->status & IRQ_GUEST) )
and delegates to guest OS if the condition is true.
desc is an instance of irq_desc_t.
In most of cases, as the unlikely hints,the IRQ_GUEST is set.
What I would like to know is , in which case the interrupt will reach
do_irq() and the IRQ_GUEST **WILL NOT** be set.
It seems to me that all NIC interrutps should reach do_irq when desc->status
& IRQ_GUEST
is TRUE. Am I right ?
Can it happen that ordinary interrupts of the NIC (interrupt 11 in this
example)
will reach do_IRQ() without this flag set ?
Regards,
Rami
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel