This series applies miscellaneous fixes and enhancements to Hyper-V
emulation code in QEMU, and lays out the ground for VMBus devices.
To give you a heads up, we currently have an implementation of VMBus
SCSI storage controller that works with native drivers in Windows
2008sp2 to 2016 and Linux; when used with modified SeaBIOS it can also
install and boot with no extra drivers required. We hope to submit it
within 2.10 merge window in a few reasonably-sized self-contained
patchsets; this is the first one.
Evgeny Yakovlev (1):
hyperv: set partition-wide MSRs only on first vcpu
Roman Kagan (22):
hyperv: add header with protocol definitions
update-linux-headers: prepare for hyperv.h removal
hyperv: ensure msrs are inited properly
hyperv: ensure VP index equal to QEMU cpu_index
hyperv: helper to find vcpu by VP index
hyperv_testdev: refactor for readability
hyperv: cosmetic: g_malloc -> g_new
hyperv: synic: only setup ack notifier if there's a callback
hyperv: allow passing arbitrary data to sint ack callback
hyperv: address HvSintRoute by X86CPU pointer
hyperv: make HvSintRoute reference-counted
hyperv: qdev-ify SynIC
kvm-all: make async_safe_run_on_cpu safe on kvm too
hyperv: make overlay pages for SynIC
hyperv: map overlay pages after updating msrs
hyperv: add synic message delivery
hyperv: add synic event flag signaling
hyperv: process SIGNAL_EVENT hypercall
hyperv: process POST_MESSAGE hypercall
hyperv_testdev: add SynIC message and event testmodes
MAINTAINERS: add myself and eyakovlev@ for hyperv*
hyperv: update copyright notices
target/i386/cpu.h | 18 +-
target/i386/hyperv.h | 38 ++-
target/i386/hyperv_proto.h | 257 +++++++++++++++++
hw/misc/hyperv_testdev.c | 269 ++++++++++++++----
kvm-all.c | 2 +
target/i386/cpu.c | 4 +-
target/i386/hyperv.c | 612 +++++++++++++++++++++++++++++++++++++---
target/i386/kvm.c | 126 ++++++---
target/i386/machine.c | 15 +-
MAINTAINERS | 7 +
scripts/update-linux-headers.sh | 4 +-
11 files changed, 1189 insertions(+), 163 deletions(-)
create mode 100644 target/i386/hyperv_proto.h
--
2.9.4