summaryrefslogtreecommitdiff
path: root/drivers/acpi
diff options
context:
space:
mode:
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>2017-09-28 22:18:15 +0200
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2017-09-28 22:18:15 +0200
commit333d1774224de9d1d9cedf11218e297d5421044b (patch)
tree1bd0a14c8b6890140166fb41fce79a1b90ac863b /drivers/acpi
parente19b205be43d11bff638cad4487008c48d21c103 (diff)
parentaaf2c2fb0f51f91c699039440862b6ae9c25c10e (diff)
Merge branch 'acpi-apei'
* acpi-apei: ACPI / APEI: clear error status before acknowledging the error
Diffstat (limited to 'drivers/acpi')
-rw-r--r--drivers/acpi/apei/ghes.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/drivers/acpi/apei/ghes.c b/drivers/acpi/apei/ghes.c
index 077f9bad6f44..3c3a37b8503b 100644
--- a/drivers/acpi/apei/ghes.c
+++ b/drivers/acpi/apei/ghes.c
@@ -743,17 +743,19 @@ static int ghes_proc(struct ghes *ghes)
}
ghes_do_proc(ghes, ghes->estatus);
+out:
+ ghes_clear_estatus(ghes);
+
+ if (rc == -ENOENT)
+ return rc;
+
/*
* GHESv2 type HEST entries introduce support for error acknowledgment,
* so only acknowledge the error if this support is present.
*/
- if (is_hest_type_generic_v2(ghes)) {
- rc = ghes_ack_error(ghes->generic_v2);
- if (rc)
- return rc;
- }
-out:
- ghes_clear_estatus(ghes);
+ if (is_hest_type_generic_v2(ghes))
+ return ghes_ack_error(ghes->generic_v2);
+
return rc;
}