Re: [PATCH v3 4/5] x86/paravirt: switch mixed paravirt/alternative calls to alternative_2

From: kernel test robot
Date: Thu Oct 26 2023 - 05:03:31 EST


Hi Juergen,

kernel test robot noticed the following build errors:

[auto build test ERROR on kvm/queue]
[also build test ERROR on tip/master linus/master v6.6-rc7 next-20231025]
[cannot apply to tip/x86/core kvm/linux-next tip/auto-latest]
[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-paravirt-move-some-functions-and-defines-to-alternative/20231019-171709
base: https://git.kernel.org/pub/scm/virt/kvm/kvm.git queue
patch link: https://lore.kernel.org/r/20231019091520.14540-5-jgross%40suse.com
patch subject: [PATCH v3 4/5] x86/paravirt: switch mixed paravirt/alternative calls to alternative_2
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20231026/202310261653.LKIRqagq-lkp@xxxxxxxxx/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231026/202310261653.LKIRqagq-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202310261653.LKIRqagq-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

arch/x86/entry/entry_64.S: Assembler messages:
>> arch/x86/entry/entry_64.S:454: Error: no such instruction: `alt_call_instr'
arch/x86/entry/entry_64.S:319: Info: macro invoked from here
arch/x86/entry/entry_64.S:1138: Info: macro invoked from here


vim +454 arch/x86/entry/entry_64.S

6368558c37107b Thomas Gleixner 2020-05-21 442
cfa82a00533f70 Thomas Gleixner 2020-02-25 443 /**
cfa82a00533f70 Thomas Gleixner 2020-02-25 444 * idtentry_mce_db - Macro to generate entry stubs for #MC and #DB
cfa82a00533f70 Thomas Gleixner 2020-02-25 445 * @vector: Vector number
cfa82a00533f70 Thomas Gleixner 2020-02-25 446 * @asmsym: ASM symbol for the entry point
cfa82a00533f70 Thomas Gleixner 2020-02-25 447 * @cfunc: C function to be called
cfa82a00533f70 Thomas Gleixner 2020-02-25 448 *
cfa82a00533f70 Thomas Gleixner 2020-02-25 449 * The macro emits code to set up the kernel context for #MC and #DB
cfa82a00533f70 Thomas Gleixner 2020-02-25 450 *
cfa82a00533f70 Thomas Gleixner 2020-02-25 451 * If the entry comes from user space it uses the normal entry path
cfa82a00533f70 Thomas Gleixner 2020-02-25 452 * including the return to user space work and preemption checks on
cfa82a00533f70 Thomas Gleixner 2020-02-25 453 * exit.
cfa82a00533f70 Thomas Gleixner 2020-02-25 @454 *
cfa82a00533f70 Thomas Gleixner 2020-02-25 455 * If hits in kernel mode then it needs to go through the paranoid
cfa82a00533f70 Thomas Gleixner 2020-02-25 456 * entry as the exception can hit any random state. No preemption
cfa82a00533f70 Thomas Gleixner 2020-02-25 457 * check on exit to keep the paranoid path simple.
cfa82a00533f70 Thomas Gleixner 2020-02-25 458 */
cfa82a00533f70 Thomas Gleixner 2020-02-25 459 .macro idtentry_mce_db vector asmsym cfunc
cfa82a00533f70 Thomas Gleixner 2020-02-25 460 SYM_CODE_START(\asmsym)
4708ea14bef314 Josh Poimboeuf 2023-03-01 461 UNWIND_HINT_IRET_ENTRY
8f93402b92d443 Peter Zijlstra 2022-03-08 462 ENDBR
cfa82a00533f70 Thomas Gleixner 2020-02-25 463 ASM_CLAC
c64cc2802a784e Lai Jiangshan 2022-04-21 464 cld
cfa82a00533f70 Thomas Gleixner 2020-02-25 465
cfa82a00533f70 Thomas Gleixner 2020-02-25 466 pushq $-1 /* ORIG_RAX: no syscall to restart */
cfa82a00533f70 Thomas Gleixner 2020-02-25 467
cfa82a00533f70 Thomas Gleixner 2020-02-25 468 /*
cfa82a00533f70 Thomas Gleixner 2020-02-25 469 * If the entry is from userspace, switch stacks and treat it as
cfa82a00533f70 Thomas Gleixner 2020-02-25 470 * a normal entry.
cfa82a00533f70 Thomas Gleixner 2020-02-25 471 */
cfa82a00533f70 Thomas Gleixner 2020-02-25 472 testb $3, CS-ORIG_RAX(%rsp)
cfa82a00533f70 Thomas Gleixner 2020-02-25 473 jnz .Lfrom_usermode_switch_stack_\@
cfa82a00533f70 Thomas Gleixner 2020-02-25 474
c82965f9e53005 Chang S. Bae 2020-05-28 475 /* paranoid_entry returns GS information for paranoid_exit in EBX. */
cfa82a00533f70 Thomas Gleixner 2020-02-25 476 call paranoid_entry
cfa82a00533f70 Thomas Gleixner 2020-02-25 477
cfa82a00533f70 Thomas Gleixner 2020-02-25 478 UNWIND_HINT_REGS
cfa82a00533f70 Thomas Gleixner 2020-02-25 479
cfa82a00533f70 Thomas Gleixner 2020-02-25 480 movq %rsp, %rdi /* pt_regs pointer */
cfa82a00533f70 Thomas Gleixner 2020-02-25 481
cfa82a00533f70 Thomas Gleixner 2020-02-25 482 call \cfunc
cfa82a00533f70 Thomas Gleixner 2020-02-25 483
cfa82a00533f70 Thomas Gleixner 2020-02-25 484 jmp paranoid_exit
cfa82a00533f70 Thomas Gleixner 2020-02-25 485
cfa82a00533f70 Thomas Gleixner 2020-02-25 486 /* Switch to the regular task stack and use the noist entry point */
cfa82a00533f70 Thomas Gleixner 2020-02-25 487 .Lfrom_usermode_switch_stack_\@:
e2dcb5f1390715 Thomas Gleixner 2020-05-21 488 idtentry_body noist_\cfunc, has_error_code=0
cfa82a00533f70 Thomas Gleixner 2020-02-25 489

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