On 18.02.26 14:49, kernel test robot wrote:
Hi Juergen,

kernel test robot noticed the following build errors:

[auto build test ERROR on linus/master]
[also build test ERROR on next-20260217]
[cannot apply to tip/x86/core kvm/queue kvm/next kvm/linux-next tip/x86/tdx 
v6.19]
[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/Juergen-Gross/x86-alternative-Support-alt_replace_call-with-instructions-after-call/20260218-163031
base:   linus/master
patch link:    
https://lore.kernel.org/r/20260218082133.400602-17-jgross%40suse.com
patch subject: [PATCH v3 16/16] x86/paravirt: Use alternatives for MSR access 
with paravirt
config: x86_64-randconfig-001-20260218 
(https://download.01.org/0day-ci/archive/20260218/[email protected]/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/20260218/[email protected]/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 <[email protected]>
| Closes: 
https://lore.kernel.org/oe-kbuild-all/[email protected]/

All errors (new ones prefixed by >>):

    In file included from arch/x86/kernel/asm-offsets.c:9:
    In file included from include/linux/crypto.h:18:
    In file included from include/linux/slab.h:17:
    In file included from include/linux/gfp.h:7:
    In file included from include/linux/mmzone.h:22:
    In file included from include/linux/mm_types.h:16:
    In file included from include/linux/uprobes.h:18:
    In file included from include/linux/timer.h:6:
    In file included from include/linux/ktime.h:25:
    In file included from include/linux/jiffies.h:10:
    In file included from include/linux/time.h:60:
    In file included from include/linux/time32.h:13:
    In file included from include/linux/timex.h:67:
    In file included from arch/x86/include/asm/timex.h:6:
    In file included from arch/x86/include/asm/tsc.h:11:
    In file included from arch/x86/include/asm/msr.h:300:
arch/x86/include/asm/paravirt-msr.h:114:23: error: unsupported inline asm: 
input with type 'u64' (aka 'unsigned long long') matching output with type 'int'
      114 |                 PV_WRMSR_CONST(msr, val, EX_TYPE_WRMSR, write_msr, 
err);
          |                                     ^~~                            
~~~
    arch/x86/include/asm/paravirt-msr.h:91:16: note: expanded from macro 
'PV_WRMSR_CONST'
       89 |                 : [err] "=a" (__err), "=d" (rdx), 
ASM_CALL_CONSTRAINT   \
          |                               ~~~~~
       90 |                 : paravirt_ptr(pv_ops_msr, __func),                 
    \
       91 |                   [val] "0" (__val), "1" ((__val) >> 32),           
    \
          |                              ^~~~~
    arch/x86/include/asm/paravirt-msr.h:116:21: error: unsupported inline asm: 
input with type 'u64' (aka 'unsigned long long') matching output with type 'int'
      116 |                 PV_WRMSR_VAR(msr, val, EX_TYPE_WRMSR, write_msr, 
err);
          |                                   ^~~                            ~~~
    arch/x86/include/asm/paravirt-msr.h:73:10: note: expanded from macro 
'PV_WRMSR_VAR'
       71 |                 : [err] "=a" (__err), "=d" (rdx), 
ASM_CALL_CONSTRAINT   \
          |                               ~~~~~
       72 |                 : paravirt_ptr(pv_ops_msr, __func),                 
    \
       73 |                   "0" (__val), "1" ((__val) >> 32), "c" (__msr)     
    \
          |                        ^~~~~
    arch/x86/include/asm/paravirt-msr.h:136:23: error: unsupported inline asm: 
input with type 'u64' (aka 'unsigned long long') matching output with type 'int'
      136 |                 PV_WRMSR_CONST(msr, val, EX_TYPE_WRMSR_SAFE, 
write_msr_safe, err);
          |                                     ^~~                             
         ~~~
    arch/x86/include/asm/paravirt-msr.h:91:16: note: expanded from macro 
'PV_WRMSR_CONST'
       89 |                 : [err] "=a" (__err), "=d" (rdx), 
ASM_CALL_CONSTRAINT   \
          |                               ~~~~~
       90 |                 : paravirt_ptr(pv_ops_msr, __func),                 
    \
       91 |                   [val] "0" (__val), "1" ((__val) >> 32),           
    \
          |                              ^~~~~
    arch/x86/include/asm/paravirt-msr.h:138:21: error: unsupported inline asm: 
input with type 'u64' (aka 'unsigned long long') matching output with type 'int'
      138 |                 PV_WRMSR_VAR(msr, val, EX_TYPE_WRMSR_SAFE, 
write_msr_safe, err);
          |                                   ^~~                               
       ~~~
    arch/x86/include/asm/paravirt-msr.h:73:10: note: expanded from macro 
'PV_WRMSR_VAR'
       71 |                 : [err] "=a" (__err), "=d" (rdx), 
ASM_CALL_CONSTRAINT   \
          |                               ~~~~~
       72 |                 : paravirt_ptr(pv_ops_msr, __func),                 
    \
       73 |                   "0" (__val), "1" ((__val) >> 32), "c" (__msr)     
    \
          |                        ^~~~~
    In file included from arch/x86/kernel/asm-offsets.c:10:
    In file included from include/crypto/aria.h:22:
    In file included from include/linux/module.h:20:
    In file included from include/linux/elf.h:6:
    In file included from arch/x86/include/asm/elf.h:10:
    In file included from arch/x86/include/asm/ia32.h:7:
    In file included from include/linux/compat.h:17:
    In file included from include/linux/fs.h:5:
    In file included from include/linux/fs/super.h:5:
    In file included from include/linux/fs/super_types.h:13:
    In file included from include/linux/percpu-rwsem.h:7:
    In file included from include/linux/rcuwait.h:6:
    In file included from include/linux/sched/signal.h:6:
    include/linux/signal.h:98:11: warning: array index 3 is past the end of the 
array (that has type 'unsigned long[1]') [-Warray-bounds]
       98 |                 return (set->sig[3] | set->sig[2] |
          |                         ^        ~
    arch/x86/include/asm/signal.h:24:2: note: array 'sig' declared here
       24 |         unsigned long sig[_NSIG_WORDS];
          |         ^
    In file included from arch/x86/kernel/asm-offsets.c:10:
    In file included from include/crypto/aria.h:22:
    In file included from include/linux/module.h:20:
    In file included from include/linux/elf.h:6:
    In file included from arch/x86/include/asm/elf.h:10:
    In file included from arch/x86/include/asm/ia32.h:7:
    In file included from include/linux/compat.h:17:
    In file included from include/linux/fs.h:5:
    In file included from include/linux/fs/super.h:5:
    In file included from include/linux/fs/super_types.h:13:
    In file included from include/linux/percpu-rwsem.h:7:
    In file included from include/linux/rcuwait.h:6:
    In file included from include/linux/sched/signal.h:6:
    include/linux/signal.h:98:25: warning: array index 2 is past the end of the 
array (that has type 'unsigned long[1]') [-Warray-bounds]
       98 |                 return (set->sig[3] | set->sig[2] |
          |                                       ^        ~
    arch/x86/include/asm/signal.h:24:2: note: array 'sig' declared here
       24 |         unsigned long sig[_NSIG_WORDS];
          |         ^
    In file included from arch/x86/kernel/asm-offsets.c:10:
    In file included from include/crypto/aria.h:22:
    In file included from include/linux/module.h:20:
    In file included from include/linux/elf.h:6:
    In file included from arch/x86/include/asm/elf.h:10:
    In file included from arch/x86/include/asm/ia32.h:7:
    In file included from include/linux/compat.h:17:
    In file included from include/linux/fs.h:5:
    In file included from include/linux/fs/super.h:5:
    In file included from include/linux/fs/super_types.h:13:
    In file included from include/linux/percpu-rwsem.h:7:
    In file included from include/linux/rcuwait.h:6:
    In file included from include/linux/sched/signal.h:6:
    include/linux/signal.h:99:4: warning: array index 1 is past the end of the 
array (that has type 'unsigned long[1]') [-Warray-bounds]
       99 |                         set->sig[1] | set->sig[0]) == 0;
          |                         ^        ~
    arch/x86/include/asm/signal.h:24:2: note: array 'sig' declared here
       24 |         unsigned long sig[_NSIG_WORDS];
          |         ^
    In file included from arch/x86/kernel/asm-offsets.c:10:
    In file included from include/crypto/aria.h:22:
    In file included from include/linux/module.h:20:
    In file included from include/linux/elf.h:6:
    In file included from arch/x86/include/asm/elf.h:10:
    In file included from arch/x86/include/asm/ia32.h:7:
    In file included from include/linux/compat.h:17:
    In file included from include/linux/fs.h:5:


vim +114 arch/x86/include/asm/paravirt-msr.h

    108 
    109 static __always_inline void write_msr(u32 msr, u64 val)
    110 {
    111         int err;
    112 
    113         if (__builtin_constant_p(msr))
  > 114                      PV_WRMSR_CONST(msr, val, EX_TYPE_WRMSR, write_msr, 
err);
    115         else
    116                 PV_WRMSR_VAR(msr, val, EX_TYPE_WRMSR, write_msr, err);
    117 }
    118 


Will be fixed in V4.


Juergen

Attachment: OpenPGP_0xB0DE9DD628BF132F.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to