|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-users] Issues Booting DomU on TI DRA72 Chip
Hi, On 09/07/2015 15:55, Brandon Perez wrote: Do you receive other interrupts in the guest? The timer IRQs for DOM0 and the guest may be different. DOM0 will use the same as the hardware (i.e the one in your log), while guests have a their interrupt defined in the guest layout (see xen/include/public/arch-arm.h). I think you are mixing two different things here:- gic_handle_irq is the Linux interrupt handler for GICv2 where every IRQ is coming (PPIs, SPIs...) - vtimer_interrupt and timer_interrupt are Xen handlers which will take of the timer IRQs of the hardware.
When the hardware fire a virtual interrupt it will be:
1) Received by Xen via gic_interrupt
2) do_IRQ will dispatch the IRQ
3) virtual_interrupt will be called has it has been registered as
callback for the virtual timer
4) The interrupt will be injected to the guest using the guest virtual
interrupt number. I.e the LRs will be setup
5) The guest will receive the interrupt
6) gic_handle_irq will dispatch the interrupt
This call is only used for IRQ owned by the domain.In the case of the timer IRQs, they are owned by Xen and therefore not directly injected to the guest. The file vtimer.c contains anything related to the guest timer: emulation of the physical timer and context/restore of both virtual and physical timer. The injection of the timer interrupts will be done in different place:- virtual: this is done in vtimer_interrupt (xen/arch/arm/timer.c) when the domain is running. If the domain is not running, we create a timer and may inject an interrupt if the timer has expired (see virt_timer_expired in xen/arch/arm/vtimer.c). - physical: the timer is completely emulated. The injection of the interrupt is done in phys_timer_expired (xen/arch/arm/vtimer.c). You can add printk in those place to check whether the interrupt is injected to the guest or not. It may give you an insight of whether the timer has been correctly setup by the guest or not. Note that you may want to only print when it's not domain 0 to avoid log pollution.
May I ask you to provide
- the .config used to build the kernel
- a link to the git repo containing the branch (I wasn't able to find
it on your first mail)
You also said you had local changes in both Linux and Xen. Can you tell us what kind of changes? Regards, -- Julien Grall _______________________________________________ Xen-users mailing list Xen-users@xxxxxxxxxxxxx http://lists.xen.org/xen-users
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |