[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20211130184933.31005-1-kirill.shutemov@linux.intel.com>
Date: Tue, 30 Nov 2021 21:49:29 +0300
From: "Kirill A. Shutemov" <kirill@...temov.name>
To: Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
Tom Lendacky <thomas.lendacky@....com>,
Joerg Roedel <jroedel@...e.de>
Cc: Kuppuswamy Sathyanarayanan
<sathyanarayanan.kuppuswamy@...ux.intel.com>,
Andi Kleen <ak@...ux.intel.com>,
Dave Hansen <dave.hansen@...el.com>,
Sean Christopherson <seanjc@...gle.com>,
Peter Zijlstra <peterz@...radead.org>,
"Nakajima, Jun" <jun.nakajima@...el.com>, x86@...nel.org,
linux-kernel@...r.kernel.org,
"Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>
Subject: [PATCHv4 0/4] Add generic MMIO instruction deconding to be used in SEV and TDX
Both AMD SEV and Intel TDX has to decode MMIO instruction to be able to
handle MMIO.
Extract insn_decode_mmio() from SEV code. TDX will also use this helper.
v4:
- Use enum mmio_type inside insn_decode_mmio() (Tom)
- Keep a comment in vc_handle_mmio() (Tom)
- Tested-by on AMD HW from Joerg.
v3:
- Handle insn_get_opcode() in is_string_insn()
v2:
- insn_get_modrm_reg_ptr() returns unsigned long pointer now (PeterZ);
- Handle insn_get_opcode() failure in insn_decode_mmio() (PeterZ);
Kirill A. Shutemov (4):
x86/insn-eval: Handle insn_get_opcode() failure
x86/insn-eval: Introduce insn_get_modrm_reg_ptr()
x86/insn-eval: Introduce insn_decode_mmio()
x86/sev-es: Use insn_decode_mmio() for MMIO implementation
arch/x86/include/asm/insn-eval.h | 13 +++
arch/x86/kernel/sev.c | 172 ++++++++-----------------------
arch/x86/lib/insn-eval.c | 109 +++++++++++++++++++-
3 files changed, 161 insertions(+), 133 deletions(-)
--
2.32.0
Powered by blists - more mailing lists