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

[Xen-devel] managing address space inside paravirtualized guest

Hello all,

I working on a project that runs in paravirtualized Linux. The
application should have it's own address space that is not managed by
the underlying Linux kernel. I use a kernel module to allocate pages
for the application page table and to communicate the pages physical
and machine physical addresses between the kernel and the application.
The page tables I create in the application seem to be correct and I
can successfully pin them using Xen hypercalls. However, when I try to
set cr3 to point to these page tables with MMUEXT_NEW_{USER}BASEPTR I
get the following error:

(XEN) domain_crash_sync called from entry.S
(XEN) Domain 1 (vcpu#0) crashed on cpu#0:
(XEN) ----[ Xen-4.0.1  x86_64  debug=n  Not tainted ]----
(XEN) CPU:    0
(XEN) RIP:    e033:[<0000000fb0013d09>]
(XEN) RFLAGS: 0000000000010246   EM: 0   CONTEXT: pv guest
(XEN) rax: 0000000000000000   rbx: 0000000fb0200000   rcx: 0000000000000000
(XEN) rdx: 0000000fb0023700   rsi: 0000000fb00247d2   rdi: 0000000000000005
(XEN) rbp: ffff880039227e98   rsp: 0000000fb0611fe8   r8:  0000000000000020
(XEN) r9:  0000000fb0023df0   r10: 0000000000007ff0   r11: 0720072007200720
(XEN) r12: 00000000014c8d00   r13: 0000000fb0200000   r14: ffff880039ce24c0
(XEN) r15: 00000000014c8d16   cr0: 0000000080050033   cr4: 00000000000006f0
(XEN) cr3: 00000000100d4000   cr2: 0000000fb0611fe0
(XEN) ds: 0000   es: 0000   fs: 0000   gs: 0000   ss: e02b   cs: e033

Any leads how to debug it would be highly appreciated.

Sincerely yours,

Xen-devel mailing list



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