[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL v4 05/10] include/hw/xen/xen_common: return error from xen_create_
From: |
Stefano Stabellini |
Subject: |
[PULL v4 05/10] include/hw/xen/xen_common: return error from xen_create_ioreq_server |
Date: |
Fri, 9 Jun 2023 10:07:46 -0700 |
From: Stefano Stabellini <stefano.stabellini@amd.com>
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>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Reviewed-by: Paul Durrant <paul@xen.org>
---
include/hw/xen/xen_native.h | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/include/hw/xen/xen_native.h b/include/hw/xen/xen_native.h
index f11eb423e3..4dce905fde 100644
--- a/include/hw/xen/xen_native.h
+++ b/include/hw/xen/xen_native.h
@@ -463,8 +463,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,
@@ -472,12 +472,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.25.1
- [PULL v4 0/10] xenpvh4-tag, Stefano Stabellini, 2023/06/09
- [PULL v4 01/10] hw/i386/xen/: move xen-mapcache.c to hw/xen/, Stefano Stabellini, 2023/06/09
- [PULL v4 02/10] hw/i386/xen: rearrange xen_hvm_init_pc, Stefano Stabellini, 2023/06/09
- [PULL v4 05/10] include/hw/xen/xen_common: return error from xen_create_ioreq_server,
Stefano Stabellini <=
- [PULL v4 06/10] hw/xen/xen-hvm-common: skip ioreq creation on ioreq registration failure, Stefano Stabellini, 2023/06/09
- [PULL v4 03/10] hw/i386/xen/xen-hvm: move x86-specific fields out of XenIOState, Stefano Stabellini, 2023/06/09
- [PULL v4 07/10] hw/xen/xen-hvm-common: Use g_new and error_report, Stefano Stabellini, 2023/06/09
- [PULL v4 08/10] meson.build: do not set have_xen_pci_passthrough for aarch64 targets, Stefano Stabellini, 2023/06/09
- [PULL v4 04/10] xen-hvm: reorganize xen-hvm and move common function to xen-hvm-common, Stefano Stabellini, 2023/06/09
- [PULL v4 09/10] hw/arm: introduce xenpvh machine, Stefano Stabellini, 2023/06/09
- [PULL v4 10/10] meson.build: enable xenpv machine build for ARM, Stefano Stabellini, 2023/06/09