Hi - Rebuild the world. (once this is merged or if you test it).
This patch set adds the ability for the kernel and user to query cpu features (e.g. CPU_FEAT_X86_XSAVEOPT). To test it out, I also check for the existence of x86's hardware support for TLS changes (e.g. WRFSBASE) and use that for TLS ops in the kernel and in glibc. Easy-peasy. Barret ------------------------ The following changes since commit 059904ed0ddf36686f3e8a274b638ebd7a777a10: Fix mxcsr boot time init (2016-02-29 13:27:01 -0500) are available in the git repository at: [email protected]:brho/akaros.git feat for you to fetch changes up to 597386a35115980f5a223efabcc65268562866b1: x86: Use FSGSBASE for TLS changes (XCC) (2016-02-29 18:34:45 -0500) ---------------------------------------------------------------- Barret Rhoden (5): Add proc_global_info (XCC) Add CPU feature detection (XCC) x86: Detect XSAVEOPT x86: use setters/getters for MSR_{FS,GS}_BASE x86: Use FSGSBASE for TLS changes (XCC) kern/arch/riscv/ros/cpu_feat.h | 14 +++++++ kern/arch/x86/cpuinfo.c | 21 +++++++--- kern/arch/x86/fsgsbase.h | 48 ++++++++++++++++++++++ kern/arch/x86/init.c | 21 ++-------- kern/arch/x86/pmap64.c | 13 +++--- kern/arch/x86/process64.c | 9 ++-- kern/arch/x86/ros/cpu_feat.h | 15 +++++++ kern/arch/x86/ros/mmu.h | 1 + kern/arch/x86/ros/mmu64.h | 13 ++++-- kern/arch/x86/smp_boot.c | 8 +++- kern/arch/x86/trap64.c | 2 +- kern/arch/x86/trap64.h | 10 +++-- kern/arch/x86/vmm/intel/vmx.c | 2 +- kern/arch/x86/x86.h | 1 + kern/include/cpu_feat.h | 23 +++++++++++ kern/include/ros/cpu_feat.h | 21 ++++++++++ kern/include/ros/memlayout.h | 4 +- kern/include/ros/procinfo.h | 20 +++++++-- kern/src/env.c | 6 +++ kern/src/init.c | 1 + .../sysdeps/akaros/kernel-features.h | 26 +++++++++++- .../glibc-2.19-akaros/sysdeps/akaros/x86_64/tls.h | 7 +++- user/parlib/include/parlib/cpu_feat.h | 18 ++++++++ 23 files changed, 250 insertions(+), 54 deletions(-) create mode 100644 kern/arch/riscv/ros/cpu_feat.h create mode 100644 kern/arch/x86/fsgsbase.h create mode 100644 kern/arch/x86/ros/cpu_feat.h create mode 100644 kern/include/cpu_feat.h create mode 100644 kern/include/ros/cpu_feat.h create mode 100644 user/parlib/include/parlib/cpu_feat.h -- You received this message because you are subscribed to the Google Groups "Akaros" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. For more options, visit https://groups.google.com/d/optout.
