[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 00/27] Enable PV backends with Xen/KVM emulation
From: |
David Woodhouse |
Subject: |
[PULL 00/27] Enable PV backends with Xen/KVM emulation |
Date: |
Tue, 7 Mar 2023 18:26:40 +0000 |
The following changes since commit 9832009d9dd2386664c15cc70f6e6bfe062be8bd:
Merge tag 'pull-riscv-to-apply-20230306' of
https://gitlab.com/palmer-dabbelt/qemu into staging (2023-03-07 12:53:00 +0000)
are available in the Git repository at:
git://git.infradead.org/users/dwmw2/qemu.git refs/tags/xenfv-2
for you to fetch changes up to 154eac37190c4d80d29b09c226abd899e397530f:
docs: Update Xen-on-KVM documentation for PV disk support (2023-03-07
17:04:30 +0000)
Tested-by: Paul Durrant <paul@xen.org>
... on real Xen (master branch, 4.18) with a Debian guest.
----------------------------------------------------------------
David Woodhouse (23):
hw/xen: Add xenstore wire implementation and implementation stubs
hw/xen: Add basic XenStore tree walk and write/read/directory support
hw/xen: Implement XenStore watches
hw/xen: Implement XenStore transactions
hw/xen: Watches on XenStore transactions
hw/xen: Implement core serialize/deserialize methods for xenstore_impl
hw/xen: Add evtchn operations to allow redirection to internal emulation
hw/xen: Add gnttab operations to allow redirection to internal emulation
hw/xen: Pass grant ref to gnttab unmap operation
hw/xen: Add foreignmem operations to allow redirection to internal
emulation
hw/xen: Move xenstore_store_pv_console_info to xen_console.c
hw/xen: Use XEN_PAGE_SIZE in PV backend drivers
hw/xen: Rename xen_common.h to xen_native.h
hw/xen: Build PV backend drivers for CONFIG_XEN_BUS
hw/xen: Only advertise ring-page-order for xen-block if gnttab supports it
hw/xen: Hook up emulated implementation for event channel operations
hw/xen: Add emulated implementation of grant table operations
hw/xen: Add emulated implementation of XenStore operations
hw/xen: Map guest XENSTORE_PFN grant in emulated Xenstore
hw/xen: Implement soft reset for emulated gnttab
i386/xen: Initialize Xen backends from pc_basic_device_init() for
emulation
MAINTAINERS: Add entry for Xen on KVM emulation
docs: Update Xen-on-KVM documentation for PV disk support
Paul Durrant (4):
hw/xen: Implement XenStore permissions
hw/xen: Create initial XenStore nodes
hw/xen: Add xenstore operations to allow redirection to internal emulation
hw/xen: Avoid crash when backend watch fires too early
MAINTAINERS | 9 +
accel/xen/xen-all.c | 69 +-
docs/system/i386/xen.rst | 30 +-
hw/9pfs/meson.build | 2 +-
hw/9pfs/xen-9p-backend.c | 32 +-
hw/block/dataplane/meson.build | 2 +-
hw/block/dataplane/xen-block.c | 12 +-
hw/block/meson.build | 2 +-
hw/block/xen-block.c | 12 +-
hw/char/meson.build | 2 +-
hw/char/xen_console.c | 57 +-
hw/display/meson.build | 2 +-
hw/display/xenfb.c | 32 +-
hw/i386/kvm/meson.build | 1 +
hw/i386/kvm/trace-events | 15 +
hw/i386/kvm/xen_evtchn.c | 15 +
hw/i386/kvm/xen_gnttab.c | 325 ++++-
hw/i386/kvm/xen_gnttab.h | 1 +
hw/i386/kvm/xen_xenstore.c | 1251 +++++++++++++++-
hw/i386/kvm/xenstore_impl.c | 1927 +++++++++++++++++++++++++
hw/i386/kvm/xenstore_impl.h | 63 +
hw/i386/pc.c | 7 +
hw/i386/pc_piix.c | 4 +-
hw/i386/xen/xen-hvm.c | 38 +-
hw/i386/xen/xen-mapcache.c | 2 +-
hw/i386/xen/xen_platform.c | 7 +-
hw/net/xen_nic.c | 25 +-
hw/usb/meson.build | 2 +-
hw/usb/xen-usb.c | 29 +-
hw/xen/meson.build | 6 +-
hw/xen/trace-events | 2 +-
hw/xen/xen-bus-helper.c | 62 +-
hw/xen/xen-bus.c | 411 +-----
hw/xen/xen-legacy-backend.c | 254 +---
hw/xen/xen-operations.c | 478 ++++++
hw/xen/xen_devconfig.c | 4 +-
hw/xen/xen_pt.c | 2 +-
hw/xen/xen_pt.h | 2 +-
hw/xen/xen_pt_config_init.c | 2 +-
hw/xen/xen_pt_graphics.c | 1 -
hw/xen/xen_pt_msi.c | 4 +-
hw/xen/xen_pvdev.c | 63 +-
include/hw/xen/xen-bus-helper.h | 26 +-
include/hw/xen/xen-bus.h | 21 +-
include/hw/xen/xen-legacy-backend.h | 24 +-
include/hw/xen/xen.h | 24 +-
include/hw/xen/xen_backend_ops.h | 408 ++++++
include/hw/xen/{xen_common.h => xen_native.h} | 75 +-
include/hw/xen/xen_pvdev.h | 6 +-
softmmu/globals.c | 4 +
target/i386/kvm/xen-emu.c | 5 +
tests/unit/meson.build | 1 +
tests/unit/test-xs-node.c | 871 +++++++++++
53 files changed, 5804 insertions(+), 927 deletions(-)
create mode 100644 hw/i386/kvm/xenstore_impl.c
create mode 100644 hw/i386/kvm/xenstore_impl.h
create mode 100644 hw/xen/xen-operations.c
create mode 100644 include/hw/xen/xen_backend_ops.h
rename include/hw/xen/{xen_common.h => xen_native.h} (89%)
create mode 100644 tests/unit/test-xs-node.c
- [PULL 00/27] Enable PV backends with Xen/KVM emulation,
David Woodhouse <=
- [PULL 22/27] hw/xen: Add emulated implementation of XenStore operations, David Woodhouse, 2023/03/07
- [PULL 01/27] hw/xen: Add xenstore wire implementation and implementation stubs, David Woodhouse, 2023/03/07
- [PULL 10/27] hw/xen: Add gnttab operations to allow redirection to internal emulation, David Woodhouse, 2023/03/07
- [PULL 05/27] hw/xen: Watches on XenStore transactions, David Woodhouse, 2023/03/07
- [PULL 02/27] hw/xen: Add basic XenStore tree walk and write/read/directory support, David Woodhouse, 2023/03/07
- [PULL 11/27] hw/xen: Pass grant ref to gnttab unmap operation, David Woodhouse, 2023/03/07
- [PULL 13/27] hw/xen: Add xenstore operations to allow redirection to internal emulation, David Woodhouse, 2023/03/07