1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* Copyright (C) 2018 - Arm Ltd */
3 
4 #ifndef __ARM64_KVM_RAS_H__
5 #define __ARM64_KVM_RAS_H__
6 
7 #include <linux/acpi.h>
8 #include <linux/errno.h>
9 #include <linux/types.h>
10 
11 #include <asm/acpi.h>
12 
13 /*
14  * Was this synchronous external abort a RAS notification?
15  * Returns '0' for errors handled by some RAS subsystem, or -ENOENT.
16  */
kvm_handle_guest_sea(phys_addr_t addr,u64 esr)17 static inline int kvm_handle_guest_sea(phys_addr_t addr, u64 esr)
18 {
19 	/* apei_claim_sea(NULL) expects to mask interrupts itself */
20 	lockdep_assert_irqs_enabled();
21 
22 	return apei_claim_sea(NULL);
23 }
24 
25 #endif /* __ARM64_KVM_RAS_H__ */
26