[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 09/12] hw/mem/cxl_type3: Fix potential divide by zero reported by
From: |
Jonathan Cameron |
Subject: |
[PATCH 09/12] hw/mem/cxl_type3: Fix potential divide by zero reported by coverity |
Date: |
Wed, 24 Jan 2024 12:40:57 +0000 |
Fixes Coverity ID 1522368.
Currently error_fatal is set if interleave_ways_dec() is going to return 0
but we should handle that zero return explicitly.
Reported-by: Stefan Hajnoczi <stefanha@gmail.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
---
Note this is a stop gap until a more complex HDM decoder verification series.
---
hw/mem/cxl_type3.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/hw/mem/cxl_type3.c b/hw/mem/cxl_type3.c
index 1b92a065a3..24211703c6 100644
--- a/hw/mem/cxl_type3.c
+++ b/hw/mem/cxl_type3.c
@@ -794,8 +794,12 @@ static bool cxl_type3_dpa(CXLType3Dev *ct3d, hwaddr
host_addr, uint64_t *dpa)
}
if (((uint64_t)host_addr < decoder_base) ||
(hpa_offset >= decoder_size)) {
- dpa_base += decoder_size /
- cxl_interleave_ways_dec(iw, &error_fatal);
+ int decoded_iw = cxl_interleave_ways_dec(iw, &error_fatal);
+
+ if (decoded_iw == 0)
+ return false;
+
+ dpa_base += decoder_size / decoded_iw;
continue;
}
--
2.39.2
- [PATCH 03/12] hw/pci-bridge/cxl_upstream: Drop g_malloc0() failure handling, (continued)
- [PATCH 03/12] hw/pci-bridge/cxl_upstream: Drop g_malloc0() failure handling, Jonathan Cameron, 2024/01/24
- [PATCH 04/12] cxl/cdat: Fix header sum value in CDAT checksum, Jonathan Cameron, 2024/01/24
- [PATCH 05/12] hw/cxl/mbox: Remove dead code, Jonathan Cameron, 2024/01/24
- [PATCH 06/12] hw/cxl/device: read from register values in mdev_reg_read(), Jonathan Cameron, 2024/01/24
- [PATCH 07/12] hw/cxl: Pass CXLComponentState to cache_mem_ops, Jonathan Cameron, 2024/01/24
- [PATCH 08/12] hw/cxl: Pass NULL for a NULL MemoryRegionOps, Jonathan Cameron, 2024/01/24
- [PATCH 09/12] hw/mem/cxl_type3: Fix potential divide by zero reported by coverity,
Jonathan Cameron <=
- [PATCH 10/12] tests/acpi: Allow update of DSDT.cxl, Jonathan Cameron, 2024/01/24
- [PATCH 11/12] hw/i386: Fix _STA return value for ACPI0017, Jonathan Cameron, 2024/01/24
- [PATCH 12/12] tests/acpi: Update DSDT.cxl to reflect change _STA return value., Jonathan Cameron, 2024/01/24