summaryrefslogtreecommitdiff
path: root/drivers/acpi
diff options
context:
space:
mode:
authorChen Gong <gong.chen@linux.intel.com>2013-03-19 06:48:07 (GMT)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2013-03-26 23:05:46 (GMT)
commitaaf9d93be71c68558c25b4052ac979ee6b7eb809 (patch)
treef11f4d597e1fb352cc67f6f9428951d44ecc4300 /drivers/acpi
parent469dd1c4ac0869cf7d1f87eac9b5a93865c10b76 (diff)
downloadlinux-aaf9d93be71c68558c25b4052ac979ee6b7eb809.tar.xz
ACPI / APEI: fix error status check condition for CPER
In Table 18-289, ACPI5.0 SPEC, the error data length in CPER Generic Error Data Entry can be 0, which means this generic error data entry can have only one header. So fix the check conditon for it. Signed-off-by: Chen Gong <gong.chen@linux.intel.com> Reviewed-by: Huang Ying <ying.huang@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi')
-rw-r--r--drivers/acpi/apei/cper.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/acpi/apei/cper.c b/drivers/acpi/apei/cper.c
index 1e5d8a4..fefc2ca 100644
--- a/drivers/acpi/apei/cper.c
+++ b/drivers/acpi/apei/cper.c
@@ -405,7 +405,7 @@ int apei_estatus_check(const struct acpi_hest_generic_status *estatus)
return rc;
data_len = estatus->data_length;
gdata = (struct acpi_hest_generic_data *)(estatus + 1);
- while (data_len > sizeof(*gdata)) {
+ while (data_len >= sizeof(*gdata)) {
gedata_len = gdata->error_data_length;
if (gedata_len > data_len - sizeof(*gdata))
return -EINVAL;