Browse Source

arm64 / ACPI: clean the additional checks before calling ghes_notify_sea()

In order to remove the additional check before calling the
ghes_notify_sea(), make stub definition when !CONFIG_ACPI_APEI_SEA.

After this cleanup, we can simply call the ghes_notify_sea() to let
APEI driver handle the SEA notification.

Signed-off-by: Dongjiu Geng <gengdongjiu@huawei.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Dongjiu Geng 7 years ago
parent
commit
1035a07835
2 changed files with 5 additions and 6 deletions
  1. 1 6
      arch/arm64/mm/fault.c
  2. 4 0
      include/acpi/ghes.h

+ 1 - 6
arch/arm64/mm/fault.c

@@ -727,12 +727,7 @@ static const struct fault_info fault_info[] = {
 
 
 int handle_guest_sea(phys_addr_t addr, unsigned int esr)
 int handle_guest_sea(phys_addr_t addr, unsigned int esr)
 {
 {
-	int ret = -ENOENT;
-
-	if (IS_ENABLED(CONFIG_ACPI_APEI_SEA))
-		ret = ghes_notify_sea();
-
-	return ret;
+	return ghes_notify_sea();
 }
 }
 
 
 asmlinkage void __exception do_mem_abort(unsigned long addr, unsigned int esr,
 asmlinkage void __exception do_mem_abort(unsigned long addr, unsigned int esr,

+ 4 - 0
include/acpi/ghes.h

@@ -118,6 +118,10 @@ static inline void *acpi_hest_get_next(struct acpi_hest_generic_data *gdata)
 	     (void *)section - (void *)(estatus + 1) < estatus->data_length; \
 	     (void *)section - (void *)(estatus + 1) < estatus->data_length; \
 	     section = acpi_hest_get_next(section))
 	     section = acpi_hest_get_next(section))
 
 
+#ifdef CONFIG_ACPI_APEI_SEA
 int ghes_notify_sea(void);
 int ghes_notify_sea(void);
+#else
+static inline int ghes_notify_sea(void) { return -ENOENT; }
+#endif
 
 
 #endif /* GHES_H */
 #endif /* GHES_H */