Re: <instantiation>:3:3: error: invalid instruction mnemonic 'annotate_unret_safe'

From: Nathan Chancellor
Date: Fri Jul 15 2022 - 16:10:12 EST


On Sat, Jul 16, 2022 at 03:22:46AM +0800, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 9b59ec8d50a1f28747ceff9a4f39af5deba9540e
> commit: 9bb2ec608a209018080ca262f771e6a9ff203b6f objtool: Update Retpoline validation
> date: 3 weeks ago
> config: i386-randconfig-a011-20220704 (https://download.01.org/0day-ci/archive/20220716/202207160308.NAwtZPxG-lkp@xxxxxxxxx/config)
> compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 2da550140aa98cf6a3e96417c87f1e89e3a26047)
> reproduce (this is a W=1 build):
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9bb2ec608a209018080ca262f771e6a9ff203b6f
> git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> git fetch --no-tags linus master
> git checkout 9bb2ec608a209018080ca262f771e6a9ff203b6f
> # save the config file
> mkdir build_dir && cp config build_dir/.config
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash
>
> If you fix the issue, kindly add following tag where applicable
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
>
> All errors (new ones prefixed by >>):
>
> >> <instantiation>:3:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:11:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:19:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:27:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:35:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:43:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:51:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:59:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:67:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:75:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:83:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:91:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:99:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:107:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:115:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:123:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)
> ^
> <instantiation>:131:3: error: invalid instruction mnemonic 'annotate_unret_safe'
> ANNOTATE_UNRET_SAFE
> ^~~~~~~~~~~~~~~~~~~
> arch/x86/kernel/../../x86/xen/xen-head.S:26:2: note: while in macro instantiation
> .rept ((1 << 12) / 32)

Looks like https://git.kernel.org/tip/3131ef39fb03bbde237d0b8260445898f3dfda5b
should take care of this (not clang specific, GCC errors too with the
same configuration).

Cheers,
Nathan