Message ID | 20230125085407.7144-6-vikram.garhwal@amd.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Introduce xenpvh machine for arm architecture | expand |
On Wed, 25 Jan 2023, Vikram Garhwal wrote: > From: Stefano Stabellini <stefano.stabellini@amd.com> > > This is done to prepare for enabling xenpv support for ARM architecture. > On ARM it is possible to have a functioning xenpv machine with only the > PV backends and no IOREQ server. If the IOREQ server creation fails, > continue to the PV backends initialization. > > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com> > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com> I know I am co-author of the patch but just for record-keeping to remember that I also reviewed this patch: Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> > --- > include/hw/xen/xen_common.h | 13 ++++++++----- > 1 file changed, 8 insertions(+), 5 deletions(-) > > diff --git a/include/hw/xen/xen_common.h b/include/hw/xen/xen_common.h > index 9a13a756ae..9ec69582b3 100644 > --- a/include/hw/xen/xen_common.h > +++ b/include/hw/xen/xen_common.h > @@ -467,9 +467,10 @@ static inline void xen_unmap_pcidev(domid_t dom, > { > } > > -static inline void xen_create_ioreq_server(domid_t dom, > - ioservid_t *ioservid) > +static inline int xen_create_ioreq_server(domid_t dom, > + ioservid_t *ioservid) > { > + return 0; > } > > static inline void xen_destroy_ioreq_server(domid_t dom, > @@ -600,8 +601,8 @@ static inline void xen_unmap_pcidev(domid_t dom, > PCI_FUNC(pci_dev->devfn)); > } > > -static inline void xen_create_ioreq_server(domid_t dom, > - ioservid_t *ioservid) > +static inline int xen_create_ioreq_server(domid_t dom, > + ioservid_t *ioservid) > { > int rc = xendevicemodel_create_ioreq_server(xen_dmod, dom, > HVM_IOREQSRV_BUFIOREQ_ATOMIC, > @@ -609,12 +610,14 @@ static inline void xen_create_ioreq_server(domid_t dom, > > if (rc == 0) { > trace_xen_ioreq_server_create(*ioservid); > - return; > + return rc; > } > > *ioservid = 0; > use_default_ioreq_server = true; > trace_xen_default_ioreq_server(); > + > + return rc; > } > > static inline void xen_destroy_ioreq_server(domid_t dom, > -- > 2.17.0 > >
diff --git a/include/hw/xen/xen_common.h b/include/hw/xen/xen_common.h index 9a13a756ae..9ec69582b3 100644 --- a/include/hw/xen/xen_common.h +++ b/include/hw/xen/xen_common.h @@ -467,9 +467,10 @@ static inline void xen_unmap_pcidev(domid_t dom, { } -static inline void xen_create_ioreq_server(domid_t dom, - ioservid_t *ioservid) +static inline int xen_create_ioreq_server(domid_t dom, + ioservid_t *ioservid) { + return 0; } static inline void xen_destroy_ioreq_server(domid_t dom, @@ -600,8 +601,8 @@ static inline void xen_unmap_pcidev(domid_t dom, PCI_FUNC(pci_dev->devfn)); } -static inline void xen_create_ioreq_server(domid_t dom, - ioservid_t *ioservid) +static inline int xen_create_ioreq_server(domid_t dom, + ioservid_t *ioservid) { int rc = xendevicemodel_create_ioreq_server(xen_dmod, dom, HVM_IOREQSRV_BUFIOREQ_ATOMIC, @@ -609,12 +610,14 @@ static inline void xen_create_ioreq_server(domid_t dom, if (rc == 0) { trace_xen_ioreq_server_create(*ioservid); - return; + return rc; } *ioservid = 0; use_default_ioreq_server = true; trace_xen_default_ioreq_server(); + + return rc; } static inline void xen_destroy_ioreq_server(domid_t dom,