From: Jon Doron <arilou@gmail.com>
To: qemu-devel@nongnu.org
Cc: mail@maciej.szmigiero.name, eyakovlev@virtuozzo.com,
ehabkost@redhat.com, rvkagan@gmail.com, liran.alon@oracle.com,
pbonzini@redhat.com, vkuznets@redhat.com,
Jon Doron <arilou@gmail.com>
Subject: [PATCH v4 0/6] hyperv: VMBus implementation
Date: Fri, 24 Apr 2020 15:34:38 +0300 [thread overview]
Message-ID: <20200424123444.3481728-1-arilou@gmail.com> (raw)
This is a rebase of the old patchset from Roman for HyperV VMBus
implementation.
How to use:
-device vmbus-bridge
Later on new paravirtualized devices can be implemented on top of it
(Network/SCSI/etc.)
VMBus is a collection of technologies. At its lowest layer, it's a message
passing and signaling mechanism, allowing efficient passing of messages to and
from guest VMs. A layer higher, it's a mechanism for defining channels of
communication, where each channel is tagged with a type (which implies a
protocol) and a instance ID. A layer higher than that, it's a bus driver,
serving as the basis of device enumeration within a VM, where a channel can
optionally be exposed as a paravirtual device. When a server-side (paravirtual
back-end) component wishes to offer a channel to a guest VM, it does so by
specifying a channel type, a mode, and an instance ID. VMBus then exposes this
in the guest.
More information about VMBus can be found in the file
vmbuskernelmodeclientlibapi.h in Microsoft's WDK.
v4:
Decided to ditch the patch that envolves handling of EOM as there is
still a discussion going on with it in the KVM mailing list.
v3:
Fixed an error asan
v2:
Rebased on top of latest patchset from Roman and Maciej
Jon Doron (6):
hyperv: expose API to determine if synic is enabled
vmbus: add vmbus protocol definitions
vmbus: vmbus implementation
i386:pc: whitelist dynamic vmbus-bridge
i386: Hyper-V VMBus ACPI DSDT entry
vmbus: add infrastructure to save/load vmbus requests
Makefile.objs | 1 +
hw/hyperv/Kconfig | 5 +
hw/hyperv/Makefile.objs | 1 +
hw/hyperv/hyperv.c | 8 +
hw/hyperv/trace-events | 18 +
hw/hyperv/vmbus.c | 2778 ++++++++++++++++++++++++++++++
hw/i386/acpi-build.c | 43 +
hw/i386/pc_piix.c | 2 +
hw/i386/pc_q35.c | 2 +
include/hw/hyperv/hyperv.h | 1 +
include/hw/hyperv/vmbus-bridge.h | 35 +
include/hw/hyperv/vmbus-proto.h | 222 +++
include/hw/hyperv/vmbus.h | 230 +++
13 files changed, 3346 insertions(+)
create mode 100644 hw/hyperv/trace-events
create mode 100644 hw/hyperv/vmbus.c
create mode 100644 include/hw/hyperv/vmbus-bridge.h
create mode 100644 include/hw/hyperv/vmbus-proto.h
create mode 100644 include/hw/hyperv/vmbus.h
--
2.24.1
next reply other threads:[~2020-04-24 12:36 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-24 12:34 Jon Doron [this message]
2020-04-24 12:34 ` [PATCH v4 1/6] hyperv: expose API to determine if synic is enabled Jon Doron
2020-04-24 12:34 ` [PATCH v4 2/6] vmbus: add vmbus protocol definitions Jon Doron
2020-04-24 12:34 ` [PATCH v4 3/6] vmbus: vmbus implementation Jon Doron
2020-04-24 12:34 ` [PATCH v4 4/6] i386:pc: whitelist dynamic vmbus-bridge Jon Doron
2020-04-24 12:34 ` [PATCH v4 5/6] i386: Hyper-V VMBus ACPI DSDT entry Jon Doron
2020-05-05 13:06 ` Igor Mammedov
2020-05-05 15:38 ` Jon Doron
2020-05-06 13:37 ` Maciej S. Szmigiero
2020-05-07 3:14 ` Jon Doron
2020-05-11 20:11 ` Roman Kagan
2020-05-13 15:37 ` Igor Mammedov
2020-05-15 8:56 ` Jon Doron
2020-05-15 12:35 ` Roman Kagan
2020-05-11 18:21 ` Roman Kagan
2020-05-13 15:34 ` Igor Mammedov
2020-05-21 16:02 ` Paolo Bonzini
2020-05-22 8:40 ` Igor Mammedow
2020-05-28 5:26 ` Jon Doron
2020-05-28 5:36 ` Jon Doron
2020-05-28 10:37 ` Igor Mammedov
2020-05-28 11:02 ` Jon Doron
2020-06-14 14:11 ` Jon Doron
2020-06-14 15:20 ` Jon Doron
2020-06-14 21:40 ` Maciej S. Szmigiero
2020-06-15 2:40 ` Jon Doron
2020-06-15 6:54 ` Maciej S. Szmigiero
2020-04-24 12:34 ` [PATCH v4 6/6] vmbus: add infrastructure to save/load vmbus requests Jon Doron
2020-05-21 16:03 ` [PATCH v4 0/6] hyperv: VMBus implementation Paolo Bonzini
2020-05-22 2:53 ` Jon Doron
2020-05-22 7:19 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200424123444.3481728-1-arilou@gmail.com \
--to=arilou@gmail.com \
--cc=ehabkost@redhat.com \
--cc=eyakovlev@virtuozzo.com \
--cc=liran.alon@oracle.com \
--cc=mail@maciej.szmigiero.name \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=rvkagan@gmail.com \
--cc=vkuznets@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).