From 0961444c07f57a43fed6788e2df90e43b51cdb06 Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Fri, 17 Jun 2016 10:22:22 +0200 Subject: [PATCH] APEI: pull a signedness check ahead for Coverity's sake On 64-bit architectures (which is all we care about right now in ACPI code), the value coming from a __u32 field makes "len" positive anyway, but since from an abstract pov the tool is right, let's just re-order things. Coverity ID: 1204965 Signed-off-by: Jan Beulich Reviewed-by: Andrew Cooper --- xen/drivers/acpi/apei/erst.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/xen/drivers/acpi/apei/erst.c b/xen/drivers/acpi/apei/erst.c index 8d721d05e6..14acf5d773 100644 --- a/xen/drivers/acpi/apei/erst.c +++ b/xen/drivers/acpi/apei/erst.c @@ -672,9 +672,11 @@ static ssize_t __erst_read(u64 record_id, struct cper_record_header *record, if (rcd_tmp->record_length > buflen) return -ENOBUFS; len = rcd_tmp->record_length; + if (len < 0) + return -ERANGE; memcpy(record, rcd_tmp, len); - return len >= 0 ? len : -ERANGE; + return len; } /* -- 2.39.5