[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Build warnings in Xen 5.15.y and 5.10.y with retbleed backports



On Tue, Jul 12, 2022 at 03:19:39PM -0400, Boris Ostrovsky wrote:
> 
> On 7/12/22 12:38 PM, Greg KH wrote:
> > Hi all,
> > 
> > I'm seeing the following build warning:
> >     arch/x86/kernel/head_64.o: warning: objtool: 
> > xen_hypercall_mmu_update(): can't find starting instruction
> > in the 5.15.y and 5.10.y retbleed backports.
> > 
> > I don't know why just this one hypercall is being called out by objtool,
> > and this warning isn't in 5.18 and Linus's tree due to I think commit
> > 5b2fc51576ef ("x86/ibt,xen: Sprinkle the ENDBR") being there.
> > 
> > But, is this a ret call that we "forgot" here?  It's a "real" ret in
> > Linus's branch:
> > 
> > .pushsection .noinstr.text, "ax"
> >     .balign PAGE_SIZE
> > SYM_CODE_START(hypercall_page)
> >     .rept (PAGE_SIZE / 32)
> >             UNWIND_HINT_FUNC
> >             ANNOTATE_NOENDBR
> >             ANNOTATE_UNRET_SAFE
> >             ret
> >             /*
> >              * Xen will write the hypercall page, and sort out ENDBR.
> >              */
> >             .skip 31, 0xcc
> >     .endr
> > 
> > while 5.15.y and older has:
> > .pushsection .text
> >     .balign PAGE_SIZE
> > SYM_CODE_START(hypercall_page)
> >     .rept (PAGE_SIZE / 32)
> >             UNWIND_HINT_FUNC
> >             .skip 31, 0x90
> >             ANNOTATE_UNRET_SAFE
> >             RET
> >     .endr
> > 
> > So should the "ret" remain or be turned into "RET" in mainline right
> > now?
> 
> 
> It doesn't matter --- this is overwritten by the hypervisor during 
> initialization when Xen fills in actual hypercall code.
> 
> 
> So f4b4bc10b0b85ec66f1a9bf5dddf475e6695b6d2 added 'ret' to make objtool happy 
> and then 14b476e07fab6 replaced 'ret' with RET as part of SLS fixes. The 
> latter was not really necessary but harmless.
> 
> 
> So it can be 'ret', RET, or anything else that tools don't complain about. It 
> will not be executed.

Cool, thanks.

But what about the objtool warning that I now see?  Is that "real"?

I don't run any Xen systems, so I can't test any of this myself.

thanks,

greg k-h



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.