[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 77/83] hw/i386/cxl: ensure maxram is greater than ram size for cal
From: |
Michael S. Tsirkin |
Subject: |
[PULL 77/83] hw/i386/cxl: ensure maxram is greater than ram size for calculating cxl range |
Date: |
Wed, 18 Oct 2023 11:59:18 -0400 |
From: Ani Sinha <anisinha@redhat.com>
pc_get_device_memory_range() finds the device memory size by calculating the
difference between maxram and ram sizes. This calculation makes sense only when
maxram is greater than the ram size. Make sure we check for that before calling
pc_get_device_memory_range().
Signed-off-by: Ani Sinha <anisinha@redhat.com>
Message-Id: <20231011105335.42296-1-anisinha@redhat.com>
Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---
hw/i386/pc.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index 6293f57a0c..dbaefa7617 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -781,10 +781,12 @@ static void pc_get_device_memory_range(PCMachineState
*pcms,
static uint64_t pc_get_cxl_range_start(PCMachineState *pcms)
{
PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms);
+ MachineState *ms = MACHINE(pcms);
hwaddr cxl_base;
ram_addr_t size;
- if (pcmc->has_reserved_memory) {
+ if (pcmc->has_reserved_memory &&
+ (ms->ram_size < ms->maxram_size)) {
pc_get_device_memory_range(pcms, &cxl_base, &size);
cxl_base += size;
} else {
--
MST
- [PULL 69/83] hw/isa/piix: Resolve duplicate code regarding PCI interrupt wiring, (continued)
- [PULL 69/83] hw/isa/piix: Resolve duplicate code regarding PCI interrupt wiring, Michael S. Tsirkin, 2023/10/18
- [PULL 63/83] hw/isa/piix: Allow for optional PIT creation in PIIX3, Michael S. Tsirkin, 2023/10/18
- [PULL 71/83] hw/i386/pc_piix: Make PIIX4 south bridge usable in PC machine, Michael S. Tsirkin, 2023/10/18
- [PULL 60/83] hw/isa/piix4: Reuse struct PIIXState from PIIX3, Michael S. Tsirkin, 2023/10/18
- [PULL 68/83] hw/isa/piix: Reuse PIIX3's PCI interrupt triggering in PIIX4, Michael S. Tsirkin, 2023/10/18
- [PULL 72/83] vhost-user-common: send get_inflight_fd once, Michael S. Tsirkin, 2023/10/18
- [PULL 74/83] vhost-user-scsi: support reconnect to backend, Michael S. Tsirkin, 2023/10/18
- [PULL 73/83] vhost: move and rename the conn retry times, Michael S. Tsirkin, 2023/10/18
- [PULL 75/83] vhost-user-scsi: start vhost when guest kicks, Michael S. Tsirkin, 2023/10/18
- [PULL 76/83] vhost-user: fix lost reconnect, Michael S. Tsirkin, 2023/10/18
- [PULL 77/83] hw/i386/cxl: ensure maxram is greater than ram size for calculating cxl range,
Michael S. Tsirkin <=
- [PULL 70/83] hw/isa/piix: Implement multi-process QEMU support also for PIIX4, Michael S. Tsirkin, 2023/10/18
- [PULL 79/83] hw/cxl: Add QTG _DSM support for ACPI0017 device, Michael S. Tsirkin, 2023/10/18
- [PULL 78/83] tests/acpi: Allow update of DSDT.cxl, Michael S. Tsirkin, 2023/10/18
- [PULL 80/83] tests/acpi: Update DSDT.cxl with QTG DSM, Michael S. Tsirkin, 2023/10/18
- [PULL 82/83] MAINTAINERS: Add include/hw/intc/i8259.h to the PC chip section, Michael S. Tsirkin, 2023/10/18
- [PULL 81/83] vhost-user: Fix protocol feature bit conflict, Michael S. Tsirkin, 2023/10/18
- [PULL 83/83] intel-iommu: Report interrupt remapping faults, fix return value, Michael S. Tsirkin, 2023/10/18