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

Re: [Xen-devel] Xen on ARMv8



On Fri, 2013-12-06 at 19:48 +0530, Vijay Kilari wrote:
> On Thu, Dec 5, 2013 at 8:27 PM, Ian Campbell <Ian.Campbell@xxxxxxxxxx> wrote:
> > On Thu, 2013-12-05 at 20:21 +0530, Vijay Kilari wrote:
> >> Hi Ian,
> >>
> >> Thanks for the information
> >>
> >>  I was successful to boot Xen on our ARMv8 simulator to some extent,
> >> but facing following issues:
> >>
> >> 1) With Stable 4.3 version, Xen boots, but fails in ctxt_switch_from()
> >>  call from schedule_tail().
> >>     This happens to be because it does not support 64-bit guest. I was
> >> using 64-bit guest
> >
> > 4.3 is probably not the best option for bringing up a new platform TBH.
> >
> >> 2) I see that staging branch has support for 64-bit guest, but it
> >> fails to boot completely.
> >>     I see continuous IRQ 37 which is not seen with stable version
> >
> > That's pretty strange. What is IRQ37 in your system?
> >
> > I know that Julien and Stefano are looking at some interrupt stuff, in
> > particular there was a patch series way back in June which is currently
> > been reworked titled "Fix multiple issues with the interrupts on ARM",
> > of which "Only enable physical IRQs when the guest asks" sounds like it
> > might be relevant given the symptom you describe.
> >
> 
> IRQ 37 is uart interrupt. The problem is with the pl011 driver changes which
> are not compatible with our ARMv8 simulator. After reverting changes to pl011
> to inline with stable branch, issue is not seen. I will identify the exact 
> patch
> that is causing this problem later.

Please do, there are a few interrupt logic changes since 4.3 in that
driver, if there is a problem there it would be good to get to the
bottom of it before Xen 4.4 comes out (in Jan/Feb next year). That said
it works on at least midway, vexpress and the arm fast models.

Did you work around this with the patch from Julien? Or some other
method?

> (XEN) Using PSCI for SMP bringup
> (XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27
> (XEN) Using generic timer at 100000 KHz
> (XEN) GIC initialization:
> (XEN)         gic_dist_addr=000000002c001000
> (XEN)         gic_cpu_addr=000000002c002000
> (XEN)         gic_hyp_addr=000000002c004000
> (XEN)         gic_vcpu_addr=000000002c006000
> (XEN)         gic_maintenance_irq=25
> (XEN) GIC: 160 lines, 8 cpus, secure (IID a002104c).
> (XEN) Using scheduler: SMP Credit Scheduler (credit)
> (XEN) Allocated console ring of 16 KiB.
> (XEN) Brought up 1 CPUs
> (XEN) *** LOADING DOMAIN 0 ***
> (XEN) Populate P2M 0xa0000000->0xc0000000 (1:1 mapping for dom0)
> (XEN) Loading kernel from boot module 2
> (XEN) elf_parse_binary: phdr: paddr=0xffffffc000080000 memsz=0x702518
> (XEN) elf_parse_binary: memory: 0xffffffc000080000 -> 0xffffffc000782518
> (XEN) elf_xen_addr_calc_check: VIRT_BASE unset, using 0x0
> (XEN) elf_xen_addr_calc_check: ELF_PADDR_OFFSET unset, using 0x0
> (XEN) elf_xen_addr_calc_check: addresses:
> (XEN)     virt_base        = 0x0
> (XEN)     elf_paddr_offset = 0x0
> (XEN)     virt_offset      = 0x0
> (XEN)     virt_kstart      = 0xffffffc000080000
> (XEN)     virt_kend        = 0xffffffc000782518
> (XEN)     virt_entry       = 0xffffffc000080020
> (XEN)     p2m_base         = 0xffffffffffffffff
> (XEN) Loading ELF image into guest memory
> (XEN) elf_load_binary: phdr 0 at 0xffffffc000080000 -> 0xffffffc0006b0024
> (XEN) Free temporary kernel buffer
> (XEN) Loading dom0 DTB to 0xffffffc000800000-0xffffffc0008017f7
> (XEN)
> (XEN) ****************************************
> (XEN) Panic on CPU 0:
> (XEN) Unable to copy the DTB to dom0 memory (rc = 18446744073709551602)
> (XEN) ****************************************

It looks like you are trying to load an ELF format kernel, which
probably doesn't work for Linux. Try passing it the
arch/arm64/boot/Image and it should work.

(ELF is useful for *BSD I think, which is why we don't just nuke this
support right now)

Ian.


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


 


Rackspace

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