[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 3/5] xen: create wrappers for all other uses of xc_hvm_XXX() functions
> -----Original Message----- > From: Anthony PERARD [mailto:anthony.perard@xxxxxxxxxx] > Sent: 01 March 2017 16:14 > To: Paul Durrant <Paul.Durrant@xxxxxxxxxx> > Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx; qemu-devel@xxxxxxxxxx; Stefano > Stabellini <sstabellini@xxxxxxxxxx>; Paolo Bonzini <pbonzini@xxxxxxxxxx>; > Richard Henderson <rth@xxxxxxxxxxx>; Eduardo Habkost > <ehabkost@xxxxxxxxxx>; Michael S. Tsirkin <mst@xxxxxxxxxx> > Subject: Re: [PATCH 3/5] xen: create wrappers for all other uses of > xc_hvm_XXX() functions > > On Thu, Feb 23, 2017 at 02:53:53PM +0000, Paul Durrant wrote: > > This patch creates inline wrapper functions in xen_common.h for all open > > coded calls to xc_hvm_XXX() functions outside of xen_common.h so that > use > > of xen_xc can be made implicit. This again is in preparation for the move > > to using libxendevicemodel. > > > > Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx> > > --- > > diff --git a/include/hw/xen/xen_common.h > b/include/hw/xen/xen_common.h > > index 1e08b98..31cf25f 100644 > > --- a/include/hw/xen/xen_common.h > > +++ b/include/hw/xen/xen_common.h > > @@ -26,6 +26,50 @@ extern xc_interface *xen_xc; > > * We don't support Xen prior to 4.2.0. > > */ > > > > +static inline int xen_set_mem_type(domid_t domid, hvmmem_type_t > type, > > + uint64_t first_pfn, uint32_t nr) > > +{ > > I don't know if it matters from where the functions are called, but > here, xc_hvm_set_mem_type takes a "uint64_t nr" (and not uint32_t). Yes, the old APIs were wrong and discarded the upper 32 bits, so limiting here is correct. Moving to the new API fixes the issue. > > > + return xc_hvm_set_mem_type(xen_xc, domid, type, first_pfn, nr); > > +} > > + > > +static inline int xen_set_pci_intx_level(domid_t domid, uint16_t segment, > > + uint8_t bus, uint8_t device, > > + uint8_t intx, unsigned int level) > > +{ > > + return xc_hvm_set_pci_intx_level(xen_xc, domid, segment, bus, > device, > > + intx, level); > > +} > > + > > +static inline int xen_set_pci_link_route(domid_t domid, uint8_t link, > > + uint8_t irq) > > +{ > > + return xc_hvm_set_pci_link_route(xen_xc, domid, link, irq); > > +} > > + > > +static inline int xen_inject_msi(domid_t domid, uint64_t msi_addr, > > + uint32_t msi_data) > > +{ > > + return xc_hvm_inject_msi(xen_xc, domid, msi_addr, msi_data); > > +} > > + > > +static inline int xen_set_isa_irq_level(domid_t domid, uint8_t irq, > > + unsigned int level) > > +{ > > + return xc_hvm_set_isa_irq_level(xen_xc, domid, irq, level); > > +} > > + > > +static inline int xen_track_dirty_vram(domid_t domid, uint64_t first_pfn, > > + uint32_t nr, unsigned long *bitmap) > > +{ > > Same here. > > > + return xc_hvm_track_dirty_vram(xen_xc, domid, first_pfn, nr, bitmap); > > +} > > + > > +static inline int xen_modified_memory(domid_t domid, uint64_t > first_pfn, > > + uint32_t nr) > > +{ > > And here. > > > + return xc_hvm_modified_memory(xen_xc, domid, first_pfn, nr); > > +} > > + > > /* Xen 4.2 through 4.6 */ > > #if CONFIG_XEN_CTRL_INTERFACE_VERSION < 471 > > > > The rest looks good. Thanks, Paul > > -- > Anthony PERARD _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |