lkml.org 
[lkml]   [2022]   [Jul]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [linux-stable-rc:linux-5.10.y 7082/7120] arch/x86/kernel/head_64.o: warning: objtool: xen_hypercall_mmu_update(): can't find starting instruction
On Thu, Jul 14, 2022 at 12:50:16AM +0200, Ben Hutchings wrote:
> On Wed, Jul 13, 2022 at 05:38:47AM +0800, kernel test robot wrote:
> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.10.y
> > head: 53b881e19526bcc3e51d9668cab955c80dcf584c
> > commit: 7575d3f3bbd1c68d6833b45d1b98ed182832bd44 [7082/7120] x86: Use return-thunk in asm code
> > config: x86_64-rhel-8.3-syz (https://download.01.org/0day-ci/archive/20220713/202207130531.SkRjrrn8-lkp@intel.com/config)
> > compiler: gcc-11 (Debian 11.3.0-3) 11.3.0
> > reproduce (this is a W=1 build):
> > # https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/commit/?id=7575d3f3bbd1c68d6833b45d1b98ed182832bd44
> > git remote add linux-stable-rc https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
> > git fetch --no-tags linux-stable-rc linux-5.10.y
> > git checkout 7575d3f3bbd1c68d6833b45d1b98ed182832bd44
> > # save the config file
> > mkdir build_dir && cp config build_dir/.config
> > make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash arch/x86/
> >
> > If you fix the issue, kindly add following tag where applicable
> > Reported-by: kernel test robot <lkp@intel.com>
> >
> > All warnings (new ones prefixed by >>):
> >
> > >> arch/x86/kernel/head_64.o: warning: objtool: xen_hypercall_mmu_update(): can't find starting instruction
> >
> > --
> > 0-DAY CI Kernel Test Service
> > https://01.org/lkp
>
> Please add the following patch to fix this. This would also be
> needed for 5.15-stable.
>
> Ben.
>
> From: Ben Hutchings <ben@decadent.org.uk>
> Date: Thu, 14 Jul 2022 00:39:33 +0200
> Subject: [PATCH] x86/xen: Fix initialisation in hypercall_page after rethunk
>
> The hypercall_page is special and the RETs there should not be changed
> into rethunk calls (but can have SLS mitigation). Change the initial
> instructions to ret + int3 padding, as was done in upstream commit
> 5b2fc51576ef "x86/ibt,xen: Sprinkle the ENDBR".
>
> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
> ---
> arch/x86/xen/xen-head.S | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/x86/xen/xen-head.S b/arch/x86/xen/xen-head.S
> index 38b73e7e54ba..2a3ef5fcba34 100644
> --- a/arch/x86/xen/xen-head.S
> +++ b/arch/x86/xen/xen-head.S
> @@ -69,9 +69,9 @@ SYM_CODE_END(asm_cpu_bringup_and_idle)
> SYM_CODE_START(hypercall_page)
> .rept (PAGE_SIZE / 32)
> UNWIND_HINT_FUNC
> - .skip 31, 0x90
> ANNOTATE_UNRET_SAFE
> - RET
> + ret
> + .skip 31, 0xcc
> .endr
>
> #define HYPERCALL(n) \
>
>

That's really odd, I swear I tried this myself:
https://lore.kernel.org/r/Ys2jlGMqAe6+h1SX@kroah.com

I'll go queue this up and see if that solves the issue on my side. But
see Boris's comment about how this shouldn't be an issue in the end.

thanks,

greg k-h

\
 
 \ /
  Last update: 2022-07-14 08:49    [W:0.063 / U:0.396 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site