public inbox for llvm@lists.linux.dev
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Sairaj Kodilkar <sarunkod@amd.com>,
	"H. Peter Anvin" <hpa@zytor.com>, Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	Ingo Molnar <mingo@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Sean Christopherson <seanjc@google.com>,
	Thomas Gleixner <tglx@kernel.org>,
	kvm@vger.kernel.org, linux-kernel@vger.kernel.org,
	x86@kernel.org
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
	suravee.suthikulpanit@amd.com, vasant.hegde@amd.com,
	nikunj.dadhania@amd.com, Manali.Shukla@amd.com,
	Sairaj Kodilkar <sarunkod@amd.com>
Subject: Re: [PATCH] KVM: x86: Add support for cmpxchg16b emulation
Date: Sat, 7 Mar 2026 13:40:56 +0800	[thread overview]
Message-ID: <202603071358.8bRahq3i-lkp@intel.com> (raw)
In-Reply-To: <20260306102047.29760-1-sarunkod@amd.com>

Hi Sairaj,

kernel test robot noticed the following build errors:

[auto build test ERROR on kvm/queue]
[also build test ERROR on kvm/next tip/master linus/master v7.0-rc2 next-20260306]
[cannot apply to kvm/linux-next tip/auto-latest bp/for-next]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Sairaj-Kodilkar/KVM-x86-Add-support-for-cmpxchg16b-emulation/20260306-182915
base:   https://git.kernel.org/pub/scm/virt/kvm/kvm.git queue
patch link:    https://lore.kernel.org/r/20260306102047.29760-1-sarunkod%40amd.com
patch subject: [PATCH] KVM: x86: Add support for cmpxchg16b emulation
config: i386-randconfig-012-20260307 (https://download.01.org/0day-ci/archive/20260307/202603071358.8bRahq3i-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260307/202603071358.8bRahq3i-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202603071358.8bRahq3i-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from arch/x86/kvm/mmu/page_track.c:19:
   In file included from arch/x86/kvm/mmu.h:7:
   In file included from arch/x86/kvm/x86.h:10:
>> arch/x86/kvm/kvm_emulate.h:271:3: error: unknown type name '__uint128_t'
     271 |                 __uint128_t val128;
         |                 ^
   1 error generated.
--
   In file included from arch/x86/kvm/vmx/vmcs12.c:4:
   In file included from arch/x86/kvm/vmx/vmcs12.h:7:
   In file included from arch/x86/kvm/vmx/vmcs.h:12:
   In file included from arch/x86/kvm/vmx/capabilities.h:7:
   In file included from arch/x86/kvm/vmx/../lapic.h:11:
   In file included from arch/x86/kvm/vmx/../hyperv.h:25:
   In file included from arch/x86/kvm/vmx/../x86.h:10:
>> arch/x86/kvm/vmx/../kvm_emulate.h:271:3: error: unknown type name '__uint128_t'
     271 |                 __uint128_t val128;
         |                 ^
   1 error generated.
--
   In file included from arch/x86/kvm/emulate.c:24:
>> arch/x86/kvm/kvm_emulate.h:271:3: error: unknown type name '__uint128_t'
     271 |                 __uint128_t val128;
         |                 ^
>> arch/x86/kvm/emulate.c:393:12: error: no member named 'val' in 'struct operand'
     393 |         ctxt->dst.val = 0xFF * !!(ctxt->eflags & X86_EFLAGS_CF);
         |         ~~~~~~~~~ ^
>> arch/x86/kvm/emulate.c:423:27: error: no member named 'val64' in 'struct operand'
     423 |                 .src_val    = ctxt->src.val64,
         |                               ~~~~~~~~~ ^
   arch/x86/kvm/emulate.c:424:27: error: no member named 'val64' in 'struct operand'
     424 |                 .dst_val    = ctxt->dst.val64,
         |                               ~~~~~~~~~ ^
   arch/x86/kvm/emulate.c:955:1: error: no member named 'val' in 'struct operand'
     955 | EM_ASM_2(add);
         | ^~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:346:10: note: expanded from macro 'EM_ASM_2'
     346 |         case 1: __EM_ASM_2(op##b, al, dl); break; \
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:305:3: note: expanded from macro '__EM_ASM_2'
     305 |                 __EM_ASM(#op " %%" #src ", %%" #dst " \n\t")
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:291:25: note: expanded from macro '__EM_ASM'
     291 |                     : "+a" (ctxt->dst.val), \
         |                             ~~~~~~~~~ ^
   arch/x86/kvm/emulate.c:955:1: error: no member named 'val' in 'struct operand'
     955 | EM_ASM_2(add);
         | ^~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:346:10: note: expanded from macro 'EM_ASM_2'
     346 |         case 1: __EM_ASM_2(op##b, al, dl); break; \
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:305:3: note: expanded from macro '__EM_ASM_2'
     305 |                 __EM_ASM(#op " %%" #src ", %%" #dst " \n\t")
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:292:25: note: expanded from macro '__EM_ASM'
     292 |                       "+d" (ctxt->src.val), \
         |                             ~~~~~~~~~ ^
   arch/x86/kvm/emulate.c:955:1: error: no member named 'val' in 'struct operand'
     955 | EM_ASM_2(add);
         | ^~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:346:10: note: expanded from macro 'EM_ASM_2'
     346 |         case 1: __EM_ASM_2(op##b, al, dl); break; \
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:305:3: note: expanded from macro '__EM_ASM_2'
     305 |                 __EM_ASM(#op " %%" #src ", %%" #dst " \n\t")
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:295:25: note: expanded from macro '__EM_ASM'
     295 |                     : "c" (ctxt->src2.val))
         |                            ~~~~~~~~~~ ^
   arch/x86/kvm/emulate.c:955:1: error: no member named 'val' in 'struct operand'
     955 | EM_ASM_2(add);
         | ^~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:347:10: note: expanded from macro 'EM_ASM_2'
     347 |         case 2: __EM_ASM_2(op##w, ax, dx); break; \
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:305:3: note: expanded from macro '__EM_ASM_2'
     305 |                 __EM_ASM(#op " %%" #src ", %%" #dst " \n\t")
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:291:25: note: expanded from macro '__EM_ASM'
     291 |                     : "+a" (ctxt->dst.val), \
         |                             ~~~~~~~~~ ^
   arch/x86/kvm/emulate.c:955:1: error: no member named 'val' in 'struct operand'
     955 | EM_ASM_2(add);
         | ^~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:347:10: note: expanded from macro 'EM_ASM_2'
     347 |         case 2: __EM_ASM_2(op##w, ax, dx); break; \
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:305:3: note: expanded from macro '__EM_ASM_2'
     305 |                 __EM_ASM(#op " %%" #src ", %%" #dst " \n\t")
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:292:25: note: expanded from macro '__EM_ASM'
     292 |                       "+d" (ctxt->src.val), \
         |                             ~~~~~~~~~ ^
   arch/x86/kvm/emulate.c:955:1: error: no member named 'val' in 'struct operand'
     955 | EM_ASM_2(add);
         | ^~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:347:10: note: expanded from macro 'EM_ASM_2'
     347 |         case 2: __EM_ASM_2(op##w, ax, dx); break; \
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:305:3: note: expanded from macro '__EM_ASM_2'
     305 |                 __EM_ASM(#op " %%" #src ", %%" #dst " \n\t")
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:295:25: note: expanded from macro '__EM_ASM'
     295 |                     : "c" (ctxt->src2.val))
         |                            ~~~~~~~~~~ ^
   arch/x86/kvm/emulate.c:955:1: error: no member named 'val' in 'struct operand'
     955 | EM_ASM_2(add);
         | ^~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:348:10: note: expanded from macro 'EM_ASM_2'
     348 |         case 4: __EM_ASM_2(op##l, eax, edx); break; \
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:305:3: note: expanded from macro '__EM_ASM_2'
     305 |                 __EM_ASM(#op " %%" #src ", %%" #dst " \n\t")
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:291:25: note: expanded from macro '__EM_ASM'
     291 |                     : "+a" (ctxt->dst.val), \
         |                             ~~~~~~~~~ ^
   arch/x86/kvm/emulate.c:955:1: error: no member named 'val' in 'struct operand'
     955 | EM_ASM_2(add);
         | ^~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:348:10: note: expanded from macro 'EM_ASM_2'
     348 |         case 4: __EM_ASM_2(op##l, eax, edx); break; \
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:305:3: note: expanded from macro '__EM_ASM_2'
     305 |                 __EM_ASM(#op " %%" #src ", %%" #dst " \n\t")
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/emulate.c:292:25: note: expanded from macro '__EM_ASM'
     292 |                       "+d" (ctxt->src.val), \
--
   In file included from arch/x86/kvm/x86.c:21:
   In file included from arch/x86/kvm/irq.h:19:
   In file included from arch/x86/kvm/lapic.h:11:
   In file included from arch/x86/kvm/hyperv.h:25:
   In file included from arch/x86/kvm/x86.h:10:
>> arch/x86/kvm/kvm_emulate.h:271:3: error: unknown type name '__uint128_t'
     271 |                 __uint128_t val128;
         |                 ^
   In file included from arch/x86/kvm/x86.c:44:
   include/linux/mman.h:157:9: warning: division by zero is undefined [-Wdivision-by-zero]
     157 |                _calc_vm_trans(flags, MAP_SYNC,       VM_SYNC      ) |
         |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/mman.h:135:21: note: expanded from macro '_calc_vm_trans'
     135 |    : ((x) & (bit1)) / ((bit1) / (bit2))))
         |                     ^ ~~~~~~~~~~~~~~~~~
>> arch/x86/kvm/x86.c:9381:30: error: no member named 'val' in 'struct operand'
    9381 |                 return vector == ctxt->src.val;
         |                                  ~~~~~~~~~ ^
   1 warning and 2 errors generated.


vim +/__uint128_t +271 arch/x86/kvm/kvm_emulate.h

   249	
   250	/* Type, address-of, and value of an instruction's operand. */
   251	struct operand {
   252		enum { OP_REG, OP_MEM, OP_MEM_STR, OP_IMM, OP_XMM, OP_YMM, OP_MM, OP_NONE } type;
   253		unsigned int bytes;
   254		unsigned int count;
   255		union {
   256			unsigned long orig_val;
   257			u64 orig_val64;
   258		};
   259		union {
   260			unsigned long *reg;
   261			struct segmented_address {
   262				ulong ea;
   263				unsigned seg;
   264			} mem;
   265			unsigned xmm;
   266			unsigned mm;
   267		} addr;
   268		union {
   269			unsigned long val;
   270			u64 val64;
 > 271			__uint128_t val128;
   272			char valptr[sizeof(avx256_t)];
   273			sse128_t vec_val;
   274			avx256_t vec_val2;
   275			u64 mm_val;
   276			void *data;
   277		} __aligned(32);
   278	};
   279	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

           reply	other threads:[~2026-03-07  5:41 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <20260306102047.29760-1-sarunkod@amd.com>]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202603071358.8bRahq3i-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=Manali.Shukla@amd.com \
    --cc=bp@alien8.de \
    --cc=dave.hansen@linux.intel.com \
    --cc=hpa@zytor.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=llvm@lists.linux.dev \
    --cc=mingo@redhat.com \
    --cc=nikunj.dadhania@amd.com \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=pbonzini@redhat.com \
    --cc=sarunkod@amd.com \
    --cc=seanjc@google.com \
    --cc=suravee.suthikulpanit@amd.com \
    --cc=tglx@kernel.org \
    --cc=vasant.hegde@amd.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox