summaryrefslogtreecommitdiffstats
path: root/hw
diff options
context:
space:
mode:
authorDongjiu Geng2020-07-27 17:12:10 +0200
committerPeter Maydell2020-07-27 17:12:10 +0200
commit4bf7c0cb09a59314aca261291e3a20a24c7dd3b3 (patch)
tree6117bfdb425cd85dc699f6623f566d197bd395d2 /hw
parentMerge remote-tracking branch 'remotes/dgibson/tags/ppc-for-5.1-20200727' into... (diff)
downloadqemu-4bf7c0cb09a59314aca261291e3a20a24c7dd3b3.tar.gz
qemu-4bf7c0cb09a59314aca261291e3a20a24c7dd3b3.tar.xz
qemu-4bf7c0cb09a59314aca261291e3a20a24c7dd3b3.zip
ACPI: Assert that we don't run out of the preallocated memory
data_length is a constant value, so we use assert instead of condition check. Signed-off-by: Dongjiu Geng <gengdongjiu@huawei.com> Message-id: 20200622113146.33421-1-gengdongjiu@huawei.com Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw')
-rw-r--r--hw/acpi/ghes.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/hw/acpi/ghes.c b/hw/acpi/ghes.c
index b363bc331d..f0ee9f51ca 100644
--- a/hw/acpi/ghes.c
+++ b/hw/acpi/ghes.c
@@ -204,16 +204,12 @@ static int acpi_ghes_record_mem_error(uint64_t error_block_address,
/* This is the length if adding a new generic error data entry*/
data_length = ACPI_GHES_DATA_LENGTH + ACPI_GHES_MEM_CPER_LENGTH;
-
/*
- * Check whether it will run out of the preallocated memory if adding a new
- * generic error data entry
+ * It should not run out of the preallocated memory if adding a new generic
+ * error data entry
*/
- if ((data_length + ACPI_GHES_GESB_SIZE) > ACPI_GHES_MAX_RAW_DATA_LENGTH) {
- error_report("Not enough memory to record new CPER!!!");
- g_array_free(block, true);
- return -1;
- }
+ assert((data_length + ACPI_GHES_GESB_SIZE) <=
+ ACPI_GHES_MAX_RAW_DATA_LENGTH);
/* Build the new generic error status block header */
acpi_ghes_generic_error_status(block, ACPI_GEBS_UNCORRECTABLE,