[intel-tdx:kvm-upstream-workaround 186/361] arch/x86/virt/vmx/tdx/seamcall.S:53: Error: invalid character '(' in mnemonic

From: kernel test robot
Date: Fri May 06 2022 - 19:02:36 EST


tree: https://github.com/intel/tdx.git kvm-upstream-workaround
head: 3b5b338cdf10dca7a2435d1f86b2dd9f1a3ad833
commit: b4cfd2e1b4daf91899a95ab3e2a4e2ea1d25773c [186/361] KVM: TDX: Add C wrapper functions for SEAMCALLs to the TDX module
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20220507/202205070603.bsmYiwOS-lkp@xxxxxxxxx/config)
compiler: gcc-11 (Debian 11.2.0-20) 11.2.0
reproduce (this is a W=1 build):
# https://github.com/intel/tdx/commit/b4cfd2e1b4daf91899a95ab3e2a4e2ea1d25773c
git remote add intel-tdx https://github.com/intel/tdx.git
git fetch --no-tags intel-tdx kvm-upstream-workaround
git checkout b4cfd2e1b4daf91899a95ab3e2a4e2ea1d25773c
# save the config file
mkdir build_dir && cp config build_dir/.config
make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

Note: the intel-tdx/kvm-upstream-workaround HEAD 3b5b338cdf10dca7a2435d1f86b2dd9f1a3ad833 builds fine.
It only hurts bisectability.

All errors (new ones prefixed by >>):

arch/x86/virt/vmx/tdx/seamcall.S: Assembler messages:
>> arch/x86/virt/vmx/tdx/seamcall.S:53: Error: invalid character '(' in mnemonic


vim +53 arch/x86/virt/vmx/tdx/seamcall.S

6
7 /*
8 * __seamcall() - Host-side interface functions to SEAM software module
9 * (the P-SEAMLDR or the TDX module)
10 *
11 * Transform function call register arguments into the SEAMCALL register
12 * ABI. Return TDX_SEAMCALL_VMFAILINVALID, or the completion status of
13 * the SEAMCALL. Additional output operands are saved in @out (if it is
14 * provided by caller).
15 *
16 *-------------------------------------------------------------------------
17 * SEAMCALL ABI:
18 *-------------------------------------------------------------------------
19 * Input Registers:
20 *
21 * RAX - SEAMCALL Leaf number.
22 * RCX,RDX,R8-R9 - SEAMCALL Leaf specific input registers.
23 *
24 * Output Registers:
25 *
26 * RAX - SEAMCALL completion status code.
27 * RCX,RDX,R8-R11 - SEAMCALL Leaf specific output registers.
28 *
29 *-------------------------------------------------------------------------
30 *
31 * __seamcall() function ABI:
32 *
33 * @fn (RDI) - SEAMCALL Leaf number, moved to RAX
34 * @rcx (RSI) - Input parameter 1, moved to RCX
35 * @rdx (RDX) - Input parameter 2, moved to RDX
36 * @r8 (RCX) - Input parameter 3, moved to R8
37 * @r9 (R8) - Input parameter 4, moved to R9
38 *
39 * @out (R9) - struct tdx_module_output pointer
40 * stored temporarily in R12 (not
41 * used by the P-SEAMLDR or the TDX
42 * module). It can be NULL.
43 *
44 * Return (via RAX) the completion status of the SEAMCALL, or
45 * TDX_SEAMCALL_VMFAILINVALID.
46 */
47 SYM_FUNC_START(__seamcall)
48 FRAME_BEGIN
49 TDX_MODULE_CALL host=1
50 FRAME_END
51 ret
52 SYM_FUNC_END(__seamcall)
> 53 EXPORT_SYMBOL_GPL(__seamcall)

--
0-DAY CI Kernel Test Service
https://01.org/lkp