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

Re: [Xen-devel] Xen on Seattle

On 9/2/2014 1:31 PM, Suravee Suthikulanit wrote:
On 9/2/2014 1:15 PM, Stefano Stabellini wrote:
On Tue, 2 Sep 2014, Suravee Suthikulanit wrote:
On 9/2/2014 1:06 PM, Stefano Stabellini wrote:
On Tue, 2 Sep 2014, Suravee Suthikulanit wrote:
Hi all,

I am running into an issue booting Xen on Seattle platform where dom0
failed to make the following hypercall in arch/arm/xen/enlighten.c:

   HYPERVISOR_vcpu_op(VCPUOP_register_vcpu_info, cpu, &info)

After investigation, the hypercall failed in the xen/common/domain.c:
map_vcpu_info(), where it check

      if ( offset > (PAGE_SIZE - sizeof(vcpu_info_t)) )
          return -EINVAL;


(XEN) DEBUG0: map_vcpu_info: offset = 0x6790
(XEN) DEBUG0: map_vcpu_info: PAGE_SIZE = 0x1000
(XEN) DEBUG0: map_vcpu_info: sizeof(vcpu_info_t) = 0x30

If I understand correctly, it seems that the hypervisor is making
that the Dom0 guest is using 4K page size.  The PAGE_SHIFT in
include/asm-arm/config.h is currently set to 12.  So, I have tried
this to 16 (for 64K page). However, there is a restriction on the
of the struct active_grant_entry { length:16; }. So, I cannot boot
64K page size. Is this accurate?

Hello Suravee,
yes, that is correct: all pages used in hypercalls and shared with the
hypervisor need to be 4K pages.

Ok, the next question would be, would it make sense/possible to
extend the
support to allow 64K pages?

It might make sense, but it is not trivial: all Xen hypercall interfaces
are built for 4K pages and would need a significant revamp.  Certainly
too late for the next release. It might be something to look at for Xen

There is nothing preventing a guest kernel from using 64K pages anywhere
else though.

The alternative is to try booting with dom0 kernel configured with 4K
pages. Currently, with 3.16 kernel, this is not working yet with Seattle
since we would need level 4 page table support to boot with 4K page size.

There is a patch from Catalin which should add support for level 4 page.
  Let us experiment with that and get back with you guys.

Quick update:

After configure kernel w/ 4K page and Using 48-bit (w/ 4 level page table), Dom0 kernel seems to be coming along further at this point up until the following point:

(XEN) DOM0: NET: Registered protocol family 10
(XEN) DOM0: sit: IPv6 over IPv4 tunneling driver
(XEN) DOM0: NET: Registered protocol family 17
(XEN) DOM0: Bridge firewalling registered
(XEN) DOM0: 9pnet: Installing 9P2000 support
(XEN) DOM0: NET: Registered protocol family 37
(XEN) DOM0: bootconsole [uart0] disabled

Please see attachment for full boot log. I am still working on trying to get to Dom0 console.


Attachment: xen-seattle-4k.txt
Description: Text document

Xen-devel mailing list



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