mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-06 01:03:55 -06:00
virtio,pci: features, cleanups
vdpa:
shadow vq vlan support
net migration with cvq
cxl:
support emulating 4 HDM decoders
serial number extended capability
virtio:
hared dma-buf
Fixes, cleanups all over the place.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
-----BEGIN PGP SIGNATURE-----
iQFDBAABCAAtFiEEXQn9CHHI+FuUyooNKB8NuNKNVGkFAmUd4/YPHG1zdEByZWRo
YXQuY29tAAoJECgfDbjSjVRpyM8H/02cRbJcQOjYt7j68zPW6GaDXxBI/UmdWDyG
15LZZbGNOPjyjNd3Vz1M7stQ5rhoKcgo/RdI+0E60a78svgW5JvpXoXR3pksc3Dx
v28B/akXwHUErYFSZQ+2VHNc8OhCd0v2ehxZxbwPEAYIOAj3hcCIVoPGXTnKJmAJ
imr5hjH0wZUc0+xdsmn8Vfdv5NTzpwfVObbGiMZejeJsaoh0y6Rt8RANBMY67KQD
S7/HPlVuDYf/y43t4ZEHNYuV9RaCdZZYlLWwV1scdKaYcofgmtJOKbOdCjHRXgj+
004Afb3rggIoCfnCzOFzhGx+MLDtLjvEn2N4oLEWCLi+k/3huaA=
=GAvH
-----END PGP SIGNATURE-----
Merge tag 'for_upstream' of https://git.kernel.org/pub/scm/virt/kvm/mst/qemu into staging
virtio,pci: features, cleanups
vdpa:
shadow vq vlan support
net migration with cvq
cxl:
support emulating 4 HDM decoders
serial number extended capability
virtio:
hared dma-buf
Fixes, cleanups all over the place.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
* tag 'for_upstream' of https://git.kernel.org/pub/scm/virt/kvm/mst/qemu: (53 commits)
libvhost-user: handle shared_object msg
vhost-user: add shared_object msg
hw/display: introduce virtio-dmabuf
util/uuid: add a hash function
virtio: remove unused next argument from virtqueue_split_read_next_desc()
virtio: remove unnecessary thread fence while reading next descriptor
virtio: use shadow_avail_idx while checking number of heads
libvhost-user.c: add assertion to vu_message_read_default
pcie_sriov: unregister_vfs(): fix error path
hw/i386/pc: improve physical address space bound check for 32-bit x86 systems
amd_iommu: Fix APIC address check
vdpa net: follow VirtIO initialization properly at cvq isolation probing
vdpa net: stop probing if cannot set features
vdpa net: fix error message setting virtio status
hw/pci-bridge/cxl-upstream: Add serial number extended capability support
hw/cxl: Support 4 HDM decoders at all levels of topology
hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
hw/cxl: Add utility functions decoder interleave ways and target count.
hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
...
Conflicts:
hw/core/machine.c
Context conflict with commit 314e0a84cd
("hw/core: remove needless
includes") because it removed an adjacent #include.
This commit is contained in:
commit
2f3913f4b2
71 changed files with 2025 additions and 450 deletions
32
hw/i386/pc.c
32
hw/i386/pc.c
|
@ -814,13 +814,39 @@ static uint64_t pc_get_cxl_range_end(PCMachineState *pcms)
|
|||
static hwaddr pc_max_used_gpa(PCMachineState *pcms, uint64_t pci_hole64_size)
|
||||
{
|
||||
X86CPU *cpu = X86_CPU(first_cpu);
|
||||
PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms);
|
||||
MachineState *ms = MACHINE(pcms);
|
||||
|
||||
/* 32-bit systems don't have hole64 thus return max CPU address */
|
||||
if (cpu->phys_bits <= 32) {
|
||||
if (cpu->env.features[FEAT_8000_0001_EDX] & CPUID_EXT2_LM) {
|
||||
/* 64-bit systems */
|
||||
return pc_pci_hole64_start() + pci_hole64_size - 1;
|
||||
}
|
||||
|
||||
/* 32-bit systems */
|
||||
if (pcmc->broken_32bit_mem_addr_check) {
|
||||
/* old value for compatibility reasons */
|
||||
return ((hwaddr)1 << cpu->phys_bits) - 1;
|
||||
}
|
||||
|
||||
return pc_pci_hole64_start() + pci_hole64_size - 1;
|
||||
/*
|
||||
* 32-bit systems don't have hole64 but they might have a region for
|
||||
* memory devices. Even if additional hotplugged memory devices might
|
||||
* not be usable by most guest OSes, we need to still consider them for
|
||||
* calculating the highest possible GPA so that we can properly report
|
||||
* if someone configures them on a CPU that cannot possibly address them.
|
||||
*/
|
||||
if (pcmc->has_reserved_memory &&
|
||||
(ms->ram_size < ms->maxram_size)) {
|
||||
hwaddr devmem_start;
|
||||
ram_addr_t devmem_size;
|
||||
|
||||
pc_get_device_memory_range(pcms, &devmem_start, &devmem_size);
|
||||
devmem_start += devmem_size;
|
||||
return devmem_start - 1;
|
||||
}
|
||||
|
||||
/* configuration without any memory hotplug */
|
||||
return pc_above_4g_end(pcms) - 1;
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue