Module Name: src Committed By: bouyer Date: Wed Aug 31 12:51:56 UTC 2022
Modified Files: src/sys/arch/x86/x86: pmap.c src/sys/arch/xen/conf: files.xen src/sys/arch/xen/xen: privcmd.c Added Files: src/sys/arch/xen/include: xenmem.h src/sys/arch/xen/xen: xenmem.c Log Message: Work in progress on dom0 PVH support: ioctl support for tools. Basically, in PVH mode (where XENFEAT_auto_translated_physmap is enabled), the hypervisor will not map foreing ressources in our virtual address space for us. Instead, we have to pass it an address in our physical address space (but not mapped to some RAM) where the ressource will show up and then enter this PA in pour page table. For this, introduce xenmem_* which manage the PA space. In PVH mode this is just allocated from the iomem_ex extent. With this, I can start a PV domU, and the guest's kernel boots (and the console works). It hangs because the backend driver can't map the frontend ressources (yet). Note that, per https://xenbits.xen.org/docs/unstable/support-matrix.html, dom0 PVH support is still considered experimental by Xen. To generate a diff of this commit: cvs rdiff -u -r1.420 -r1.421 src/sys/arch/x86/x86/pmap.c cvs rdiff -u -r1.186 -r1.187 src/sys/arch/xen/conf/files.xen cvs rdiff -u -r0 -r1.1 src/sys/arch/xen/include/xenmem.h cvs rdiff -u -r1.61 -r1.62 src/sys/arch/xen/xen/privcmd.c cvs rdiff -u -r0 -r1.1 src/sys/arch/xen/xen/xenmem.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.