The following changes since commit ba0fa56bc06e563de68d2a2bf3ddb0cfea1be4f9:
Merge remote-tracking branch 'remotes/vivier/tags/q800-for-6.2-pull-request' into staging (2021-09-29 21:20:49 +0100) are available in the Git repository at: https://gitlab.com/bonzini/qemu.git tags/for-upstream for you to fetch changes up to c1de5858bd39b299d3d8baec38b0376bed7f19e8: meson_options.txt: Switch the default value for the vnc option to 'auto' (2021-09-30 15:30:25 +0200) ---------------------------------------------------------------- * SGX implementation for x86 * Miscellaneous bugfixes * Fix dependencies from ROMs to qtests ---------------------------------------------------------------- Marc-André Lureau (1): build-sys: add HAVE_IPPROTO_MPTCP Paolo Bonzini (2): meson: unpack edk2 firmware even if --disable-blobs tests: qtest: bios-tables-test depends on the unpacked edk2 ROMs Peter Maydell (1): target/i386: Fix memory leak in sev_read_file_base64() Peter Xu (2): memory: Name all the memory listeners memory: Add tracepoint for dirty sync Sean Christopherson (21): memory: Add RAM_PROTECTED flag to skip IOMMU mappings hostmem: Add hostmem-epc as a backend for SGX EPC i386: Add 'sgx-epc' device to expose EPC sections to guest vl: Add sgx compound properties to expose SGX EPC sections to guest i386: Add primary SGX CPUID and MSR defines i386: Add SGX CPUID leaf FEAT_SGX_12_0_EAX i386: Add SGX CPUID leaf FEAT_SGX_12_0_EBX i386: Add SGX CPUID leaf FEAT_SGX_12_1_EAX i386: Add get/set/migrate support for SGX_LEPUBKEYHASH MSRs i386: Add feature control MSR dependency when SGX is enabled i386: Update SGX CPUID info according to hardware/KVM/user input i386: kvm: Add support for exposing PROVISIONKEY to guest i386: Propagate SGX CPUID sub-leafs to KVM Adjust min CPUID level to 0x12 when SGX is enabled hw/i386/fw_cfg: Set SGX bits in feature control fw_cfg accordingly hw/i386/pc: Account for SGX EPC sections when calculating device memory i386/pc: Add e820 entry for SGX EPC section(s) i386: acpi: Add SGX EPC entry to ACPI tables q35: Add support for SGX EPC i440fx: Add support for SGX EPC docs/system: Add SGX documentation to the system manual Thomas Huth (1): meson_options.txt: Switch the default value for the vnc option to 'auto' Yang Zhong (5): Kconfig: Add CONFIG_SGX support qom: Add memory-backend-epc ObjectOptions support sgx-epc: Add the fill_device_info() callback support target/i386: Add HMP and QMP interfaces for SGX target/i386: Add the query-sgx-capabilities QMP command accel/hvf/hvf-accel-ops.c | 1 + accel/kvm/kvm-all.c | 7 +- backends/hostmem-epc.c | 82 ++++++++++++++ backends/meson.build | 1 + configs/devices/i386-softmmu/default.mak | 1 + docs/system/i386/sgx.rst | 165 +++++++++++++++++++++++++++ docs/system/target-i386.rst | 1 + hmp-commands-info.hx | 15 +++ hw/i386/Kconfig | 5 + hw/i386/acpi-build.c | 22 ++++ hw/i386/fw_cfg.c | 12 +- hw/i386/meson.build | 2 + hw/i386/pc.c | 15 ++- hw/i386/pc_piix.c | 1 + hw/i386/pc_q35.c | 1 + hw/i386/sgx-epc.c | 184 +++++++++++++++++++++++++++++++ hw/i386/sgx-stub.c | 26 +++++ hw/i386/sgx.c | 170 ++++++++++++++++++++++++++++ hw/i386/x86.c | 29 +++++ hw/i386/xen/xen-hvm.c | 2 + hw/intc/openpic_kvm.c | 1 + hw/remote/proxy-memory-listener.c | 1 + hw/vfio/common.c | 2 + hw/vfio/spapr.c | 1 + hw/virtio/vhost-vdpa.c | 1 + hw/virtio/vhost.c | 2 + hw/virtio/virtio.c | 1 + hw/xen/xen_pt.c | 2 + include/exec/memory.h | 23 +++- include/hw/i386/hostmem-epc.h | 28 +++++ include/hw/i386/pc.h | 6 + include/hw/i386/sgx-epc.h | 67 +++++++++++ include/hw/i386/sgx.h | 12 ++ include/hw/i386/x86.h | 1 + include/monitor/hmp-target.h | 1 + include/sysemu/kvm_int.h | 2 +- io/dns-resolver.c | 2 +- meson.build | 18 +-- meson_options.txt | 2 +- monitor/hmp-cmds.c | 10 ++ pc-bios/descriptors/meson.build | 4 +- pc-bios/meson.build | 5 +- qapi/machine.json | 63 ++++++++++- qapi/misc-target.json | 61 ++++++++++ qapi/qom.json | 19 ++++ qapi/sockets.json | 2 +- qemu-options.hx | 10 +- softmmu/memory.c | 7 ++ softmmu/physmem.c | 4 +- softmmu/trace-events | 1 + target/arm/kvm.c | 1 + target/i386/cpu.c | 167 +++++++++++++++++++++++++++- target/i386/cpu.h | 16 +++ target/i386/hax/hax-mem.c | 1 + target/i386/kvm/kvm.c | 77 ++++++++++++- target/i386/kvm/kvm_i386.h | 2 + target/i386/machine.c | 20 ++++ target/i386/monitor.c | 32 ++++++ target/i386/nvmm/nvmm-all.c | 1 + target/i386/sev.c | 2 +- target/i386/whpx/whpx-all.c | 1 + tests/qtest/meson.build | 6 +- tests/qtest/qmp-cmd-test.c | 2 + util/qemu-sockets.c | 6 +- 64 files changed, 1397 insertions(+), 38 deletions(-) create mode 100644 backends/hostmem-epc.c create mode 100644 docs/system/i386/sgx.rst create mode 100644 hw/i386/sgx-epc.c create mode 100644 hw/i386/sgx-stub.c create mode 100644 hw/i386/sgx.c create mode 100644 include/hw/i386/hostmem-epc.h create mode 100644 include/hw/i386/sgx-epc.h create mode 100644 include/hw/i386/sgx.h -- 2.31.1