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

Re: [Xen-devel] [PATCH v5 08/12] x86/hyperv: provide Hyper-V hypercall functions



On Thu, Jan 30, 2020 at 01:08:07PM +0100, Roger Pau Monné wrote:
> 
> > +}
> > +
> >  /*
> >   * Local variables:
> >   * mode: C
> > diff --git a/xen/arch/x86/xen.lds.S b/xen/arch/x86/xen.lds.S
> > index 97f9c07891..8e02b4c648 100644
> > --- a/xen/arch/x86/xen.lds.S
> > +++ b/xen/arch/x86/xen.lds.S
> > @@ -329,6 +329,10 @@ SECTIONS
> >    efi = .;
> >  #endif
> >  
> > +#ifdef CONFIG_HYPERV_GUEST
> > +  hv_hcall_page = ABSOLUTE(__fix_x_to_virt(1));
> 
> I assume there's no way to use FIX_X_HYPERV_HCALL because it's an
> enum?
> 

Yes.

And the trick to generate a symbol didn't work either.

> > +#endif
> > +
> >    /* Sections to be discarded */
> >    /DISCARD/ : {
> >         *(.exit.text)
> > diff --git a/xen/include/asm-x86/fixmap.h b/xen/include/asm-x86/fixmap.h
> > index 8094546b75..a9bcb068cb 100644
> > --- a/xen/include/asm-x86/fixmap.h
> > +++ b/xen/include/asm-x86/fixmap.h
> > @@ -16,6 +16,7 @@
> >  
> >  #define FIXADDR_TOP (VMAP_VIRT_END - PAGE_SIZE)
> >  #define FIXADDR_X_TOP (XEN_VIRT_END - PAGE_SIZE)
> > +#define __fix_x_to_virt(x) (FIXADDR_X_TOP - ((x) << PAGE_SHIFT))
> >  
> >  #ifndef __ASSEMBLY__
> >  
> > @@ -110,8 +111,6 @@ extern void __set_fixmap_x(
> >  
> >  #define clear_fixmap_x(idx) __set_fixmap_x(idx, 0, 0)
> >  
> > -#define __fix_x_to_virt(x) (FIXADDR_X_TOP - ((x) << PAGE_SHIFT))
> > -
> >  #define fix_x_to_virt(x)   ((void *)__fix_x_to_virt(x))
> 
> This seems like some unrelated code movement?
> 

It is required. This section is not supposed to be used in linker
script. I have to move that macro ahead.

> Thanks, Roger.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

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