Hi -
This patch set helps greedy-mode VMs (dedicated cores) in a couple ways:
- The guest can mwait to halt its cores, enabling the max turbo mode
speeds on its other cores
- Vcore 0 mwaits on notif_pending, instead of spinning in the 2LS
waiting for events, thus reducing interference on other cores
There are a couple other minor changes, including adding printx to
userspace. You can toggle it through the monitor, e.g.
$ m px PID
You'll need to reinstall your kernel headers and update your linux-guest
repo(s). You shouldn't need to rebuild glibc unless I broke something.
Barret
The following changes since commit 770ca98bc691184891986107542ed584cb0f0dc5:
net: tcp: Handle reseqs of length 0 (2017-11-21 15:24:13 -0500)
are available in the Git repository at:
[email protected]:brho/akaros.git vmm
for you to fetch changes up to c1257c0d0110f52364b787a7a6b31b1ae99d0176:
vmm: Export the TSC freq via a vmcall (XCC) (2017-11-22 11:49:34 -0500)
----------------------------------------------------------------
View this online at:
https://github.com/brho/akaros/compare/770ca98bc691...c1257c0d0110
----------------------------------------------------------------
Barret Rhoden (9):
Remove i386 from glibc (XCC)
Add printx to userspace (XCC)
x86: Remove UNUSED_ARG #define
vmm: Let the VMM control mwait vmexits (XCC)
Make cpu_halt() return with IRQs disabled
Allow sys_halt_core() to monitor notif_pending
vmm: Halt vcore 0 instead of spinning
vmm: Remove lapic_timer_frequency from the cmd line
vmm: Export the TSC freq via a vmcall (XCC)
kern/arch/riscv/arch.h | 6 +
kern/arch/riscv/entry.S | 1 +
kern/arch/x86/arch.h | 2 +
kern/arch/x86/idle.c | 21 +-
kern/arch/x86/vmm/intel/vmx.c | 14 +-
kern/arch/x86/x86.h | 3 -
kern/include/ros/procdata.h | 9 +-
kern/include/ros/vmm.h | 4 +-
kern/kfs/tinycore_cmdline | 1 -
kern/kfs/vmimage_cmdline | 1 -
kern/src/monitor.c | 19 +-
kern/src/smp.c | 6 +-
kern/src/syscall.c | 39 +-
tests/vmm/vmrunkernel.c | 5 +-
.../glibc-2.19-akaros/sysdeps/akaros/i386/sysdep.h | 182 --------
.../glibc-2.19-akaros/sysdeps/akaros/i386/tls.h | 492 ---------------------
user/parlib/include/parlib/riscv/arch.h | 5 +
user/parlib/include/parlib/ros_debug.h | 2 -
user/parlib/include/parlib/stdio.h | 29 +-
user/parlib/include/parlib/vcore.h | 1 +
user/parlib/include/parlib/x86/arch.h | 5 +
user/parlib/vcore.c | 11 +
user/vmm/sched.c | 23 +-
user/vmm/vmexit.c | 43 +-
24 files changed, 197 insertions(+), 727 deletions(-)
delete mode 100644
tools/compilers/gcc-glibc/glibc-2.19-akaros/sysdeps/akaros/i386/sysdep.h
delete mode 100644
tools/compilers/gcc-glibc/glibc-2.19-akaros/sysdeps/akaros/i386/tls.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.