From: Chuanxiao Dong <chuanxiao.dong@xxxxxxxxx> Add new file bug.h to support PKVM_ASSERT. If CONFIG_PKVM_INTEL_DEBUG enabled, print out assertion information then call into Linux BUG(), otherwise just do a dead loop. Signed-off-by: Chuanxiao Dong <chuanxiao.dong@xxxxxxxxx> Signed-off-by: Jason Chen CJ <jason.cj.chen@xxxxxxxxx> --- arch/x86/kvm/vmx/pkvm/hyp/bug.h | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/arch/x86/kvm/vmx/pkvm/hyp/bug.h b/arch/x86/kvm/vmx/pkvm/hyp/bug.h new file mode 100644 index 000000000000..ca333708cc98 --- /dev/null +++ b/arch/x86/kvm/vmx/pkvm/hyp/bug.h @@ -0,0 +1,23 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2022 Intel Corporation + */ +#ifndef __PKVM_BUG_H +#define __PKVM_BUG_H + +#ifdef CONFIG_PKVM_INTEL_DEBUG +#include <linux/printk.h> + +#define PKVM_ASSERT(c) \ +do { \ + if (!(c)) { \ + pr_err("assertion failed %s: %d: %s\n", \ + __FILE__, __LINE__, #c); \ + BUG(); \ + } \ +} while (0) +#else +#define PKVM_ASSERT(c) do { } while (!(c)) +#endif + +#endif -- 2.25.1