[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-users] [Xen-Users] Issues Booting Dom0 on ARM Cortex A15



On 06/17/2015 03:15 PM, Julien Grall wrote:
Hello Brandon,

On 17/06/2015 15:30, Brandon Perez wrote:
The console and keyhandler are receiving 'q' and '0', but nothing is
happening/being printed out. I suspect this is because they are
scheduled as tasklets, and are never getting a chance to run.

Opening the debugger, it seems like I'm stuck doing timer softirqs and
handling timer interrupts continually. I'm going to double check the
timer settings in my device tree.

Looking to your first log [1], it seems that CNTFRQ is not set correctly:

Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 0 KHz

The CNTFRQ register should be set by the firmware/bootloader. Does the
Linux kernel is booting on baremetal with the same firmware/bootloader?

If yes, do you use the same device tree?

Regards,


Hi Julien,

Good catch! That seems to have been the issue. To answer your questions, yes the kernel is booting with same firmware, bootloader, and device tree as Xen.

The real issue actually stems from the uBoot code, which was not properly setting the CNTFRQ register (which was indeed 0).

The CNTFRQ register being 0 lead to a whole slew of issues, the primary of which being was that the timer interrupt ran extremely often, causing progress in preemptable sections of code to be extremely slow.

This prevented the kernel from ever getting to boot because the SCHEDULE SOFTIRQ was never getting a chance to run, because there would always be a timer SOFTIRQ taking precedence over it.

   This has resolved the issue, at least for Xen.

Brandon

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxx
http://lists.xen.org/xen-users


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.