[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH v2 00/21] libs/guest: new CPUID/MSR interface
Hello, The following series introduces a new CPUID/MSR interface for the xenguest library. Such interface handles both CPUID and MSRs using the same opaque object, and provides some helpers for the user to peek or modify such data without exposing the backing type. This is useful for future development as CPUID and MSRs are closely related, so it makes handling those much easier if they are inside the same object (ie: a change to a CPUID bit might expose or hide an MSR). In this patch series libxl and other in tree users have been switched to use the new interface, so it shouldn't result in any functional change from a user point of view. Note there are still some missing pieces likely. The way to modify CPUID data is not ideal, as it requires fetching a leaf and modifying it directly. We might want some kind of interface in order to set specific CPUID features more easily, but that's to be discussed, and would be done as a follow up series. Thanks, Roger. Roger Pau Monne (21): libxl: don't ignore the return value from xc_cpuid_apply_policy libs/guest: rename xc_get_cpu_policy_size to xc_cpu_policy_get_size libs/guest: introduce xc_cpu_policy_t libs/guest: introduce helper to fetch a system cpu policy libs/guest: introduce helper to fetch a domain cpu policy libs/guest: introduce helper to serialize a cpu policy tools: switch existing users of xc_get_{system,domain}_cpu_policy libs/guest: introduce a helper to apply a cpu policy to a domain libs/guest: allow fetching a specific CPUID leaf from a cpu policy tests/cpu-policy: add sorted MSR test libs/guest: allow fetching a specific MSR entry from a cpu policy libs/guest: allow updating a cpu policy CPUID data libs/guest: allow updating a cpu policy MSR data libs/guest: introduce helper to check cpu policy compatibility libs/guest: obtain a compatible cpu policy from two input ones libs/guest: make a cpu policy compatible with older Xen versions libs/guest: introduce helper set cpu topology in cpu policy libs/guest: rework xc_cpuid_xend_policy libs/guest: apply a featureset into a cpu policy libs/{light,guest}: implement xc_cpuid_apply_policy in libxl libs/guest: (re)move xc_cpu_policy_apply_cpuid tools/include/libxl.h | 6 +- tools/include/xen-tools/libs.h | 5 + tools/include/xenctrl.h | 102 ++-- tools/libs/guest/Makefile | 2 +- tools/libs/guest/xg_cpuid_x86.c | 710 +++++++++++++++-------- tools/libs/guest/xg_sr_common_x86.c | 17 +- tools/libs/light/libxl_cpuid.c | 230 +++++++- tools/libs/light/libxl_create.c | 5 +- tools/libs/light/libxl_dom.c | 2 +- tools/libs/light/libxl_internal.h | 32 +- tools/libs/light/libxl_nocpuid.c | 5 +- tools/misc/xen-cpuid.c | 23 +- tools/tests/cpu-policy/test-cpu-policy.c | 17 + 13 files changed, 821 insertions(+), 335 deletions(-) -- 2.30.1
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |