[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v2 0/9] Fixes to pagetable handling
This series has been a long time in preparation (i.e. most of the 4.8 and 4.9 dev cycles). It started when I tried to make an XTF PoC for XSA-176, and stumbled upon the the _PAGE_PAGED aliasing issue (see patch 7) which caused by PoC to be descheduled waiting for (a non-existent) paging agent to respond. This series is built upon: 1) The switch to using _Bool. I spent rather too long trying to debug why CR0.WP wasn't behaving properly, and it was down to static inline bool_t guest_wp_enabled(). 2) The series to switch emulation to using system-segment relative memory accesses (directly relevant to patches 1 and 2), which in turn resulted in the discovery of XSA-191. 3) The CPUID improvement work to get maxphysaddr into a sensibly audited state, and sensibly accessible location. Patches 1-4 and 8-9 are new in v2, mostly items requested to be split out in review from v1. Andrew Cooper (9): x86/cpuid: Sort cpu_has_* predicates by feature number x86/pagewalk: Use pointer syntax for pfec parameter x86/shadow: Drop VALID_GFN() x86/pagewalk: Clean up guest_supports_* predicates x86/pagewalk: Helpers for reserved bit handling x86/pagewalk: Re-implement the pagetable walker x86/shadow: Use the pagewalk reserved bits helpers x86/pagewalk: Improve the logic behind setting access and dirty bits x86/pagewalk: non-functional cleanup xen/arch/x86/mm/guest_walk.c | 574 +++++++++++++++++++++----------------- xen/arch/x86/mm/hap/guest_walk.c | 33 +-- xen/arch/x86/mm/hap/nested_ept.c | 2 +- xen/arch/x86/mm/p2m.c | 17 +- xen/arch/x86/mm/shadow/multi.c | 99 ++++--- xen/include/asm-x86/cpufeature.h | 118 ++++---- xen/include/asm-x86/guest_pt.h | 215 +++++++++++--- xen/include/asm-x86/hvm/hvm.h | 4 - xen/include/asm-x86/p2m.h | 2 +- xen/include/asm-x86/page.h | 3 - xen/include/asm-x86/paging.h | 7 +- xen/include/asm-x86/processor.h | 2 + xen/include/asm-x86/x86_64/page.h | 6 - 13 files changed, 642 insertions(+), 440 deletions(-) -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |