The following changes since commit f9128631fbeb40a55f7bc145397981c963d40909:
Merge remote-tracking branch 'remotes/stefanha-gitlab/tags/block-pull-request' into staging (2021-09-07 13:24:43 +0100) are available in the Git repository at: https://gitlab.com/bonzini/qemu.git tags/for-upstream for you to fetch changes up to 3b942628231462c56c883a6273cf137d2a382f8f: ebpf: only include in system emulators (2021-09-08 08:07:04 +0200) ---------------------------------------------------------------- * SGX support (Sean, Yang) * vGIF and vVMLOAD/VMSAVE support (Lara) * Fix LA57 support in TCG (Daniel) * Avoid pointless warnings for static user-only compilation (Thomas) * Fix --disable-system compilation if libbpf is found * target-i386.rst restructuring ---------------------------------------------------------------- v3->v4: added docs changes and build system bugfixes Daniel P. Berrangé (1): target/i386: add missing bits to CR4_RESERVED_MASK Lara Lazier (7): target/i386: VMRUN and VMLOAD canonicalizations target/i386: Added VGIF feature target/i386: Moved int_ctl into CPUX86State structure target/i386: Added VGIF V_IRQ masking capability target/i386: Added ignore TPR check in ctl_has_irq target/i386: Added changed priority check for VIRQ target/i386: Added vVMLOAD and vVMSAVE feature Paolo Bonzini (6): fw_cfg: add etc/msr_feature_control docs: standardize book titles to === with overline docs: standardize directory index to --- with overline docs/system: standardize man page sections to --- with overline docs/system: move x86 CPU configuration to a separate document ebpf: only include in system emulators 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.build: Do not look for VNC-related libraries if have_system is not set Yang Zhong (7): qom: Add memory-backend-epc ObjectOptions support hostmem-epc: Add the reset interface for EPC backend reset sgx-epc: Add the reset interface for sgx-epc virt device sgx-epc: Avoid bios reset during sgx epc initialization hostmem-epc: Make prealloc consistent with qemu cmdline during reset Kconfig: Add CONFIG_SGX support sgx-epc: Add the fill_device_info() callback support backends/hostmem-epc.c | 118 ++++++++++++++ backends/meson.build | 1 + configs/devices/i386-softmmu/default.mak | 1 + docs/about/index.rst | 3 +- docs/devel/index.rst | 3 +- docs/index.rst | 1 + docs/interop/index.rst | 3 +- docs/specs/index.rst | 3 +- docs/system/cpu-models-x86.rst.inc | 4 +- docs/system/i386/cpu.rst | 1 + docs/system/i386/sgx.rst | 165 +++++++++++++++++++ docs/system/index.rst | 3 +- docs/system/qemu-block-drivers.rst | 4 + docs/system/qemu-cpu-models.rst | 10 +- docs/system/qemu-manpage.rst | 10 +- docs/system/target-i386.rst | 9 +- docs/tools/index.rst | 3 +- docs/tools/qemu-img.rst | 1 + docs/tools/qemu-nbd.rst | 1 + docs/tools/qemu-pr-helper.rst | 1 + docs/tools/qemu-storage-daemon.rst | 1 + docs/tools/qemu-trace-stap.rst | 1 + docs/user/index.rst | 3 +- ebpf/meson.build | 2 +- hw/i386/Kconfig | 5 + hw/i386/acpi-build.c | 22 +++ hw/i386/fw_cfg.c | 10 +- hw/i386/meson.build | 2 + hw/i386/pc.c | 15 +- hw/i386/pc_piix.c | 4 + hw/i386/pc_q35.c | 3 + hw/i386/sgx-epc.c | 265 +++++++++++++++++++++++++++++++ hw/i386/sgx-stub.c | 13 ++ hw/i386/sgx.c | 84 ++++++++++ hw/i386/x86.c | 29 ++++ hw/nvram/fw_cfg.c | 1 + hw/vfio/common.c | 1 + include/exec/memory.h | 15 +- include/hw/i386/pc.h | 8 + include/hw/i386/sgx-epc.h | 67 ++++++++ include/hw/i386/x86.h | 1 + meson.build | 2 +- monitor/hmp-cmds.c | 10 ++ qapi/machine.json | 52 +++++- qapi/qom.json | 19 +++ qemu-options.hx | 10 +- softmmu/memory.c | 5 + softmmu/physmem.c | 3 +- target/i386/cpu.c | 199 +++++++++++++++++++++-- target/i386/cpu.h | 39 +++++ target/i386/kvm/kvm.c | 75 +++++++++ target/i386/kvm/kvm_i386.h | 2 + target/i386/machine.c | 42 ++++- target/i386/svm.h | 8 + target/i386/tcg/seg_helper.c | 2 +- target/i386/tcg/sysemu/excp_helper.c | 2 +- target/i386/tcg/sysemu/misc_helper.c | 11 +- target/i386/tcg/sysemu/svm_helper.c | 121 +++++++++----- 58 files changed, 1418 insertions(+), 81 deletions(-) create mode 100644 backends/hostmem-epc.c create mode 100644 docs/system/i386/cpu.rst 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/sgx-epc.h -- 2.31.1