mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-29 06:20:26 +00:00
xen: add a meaningful declaration of grant_copy_segment into xen_common.h
Currently the xen_disk source has to carry #ifdef exclusions to compile against Xen older then 4.8. This is a bit messy so this patch lifts the definition of struct xengnttab_grant_copy_segment and adds it into the pre-4.8 compat area in xen_common.h, which allows xen_disk to be cleaned up. Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Acked-by: Anthony PERARD <anthony.perard@citrix.com> Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
This commit is contained in:
parent
8d0f08e95b
commit
5c0d914a9b
@ -496,8 +496,6 @@ static int ioreq_map(struct ioreq *ioreq)
|
||||
return 0;
|
||||
}
|
||||
|
||||
#if CONFIG_XEN_CTRL_INTERFACE_VERSION >= 40800
|
||||
|
||||
static void ioreq_free_copy_buffers(struct ioreq *ioreq)
|
||||
{
|
||||
int i;
|
||||
@ -579,22 +577,6 @@ static int ioreq_grant_copy(struct ioreq *ioreq)
|
||||
|
||||
return rc;
|
||||
}
|
||||
#else
|
||||
static void ioreq_free_copy_buffers(struct ioreq *ioreq)
|
||||
{
|
||||
abort();
|
||||
}
|
||||
|
||||
static int ioreq_init_copy_buffers(struct ioreq *ioreq)
|
||||
{
|
||||
abort();
|
||||
}
|
||||
|
||||
static int ioreq_grant_copy(struct ioreq *ioreq)
|
||||
{
|
||||
abort();
|
||||
}
|
||||
#endif
|
||||
|
||||
static int ioreq_runio_qemu_aio(struct ioreq *ioreq);
|
||||
|
||||
|
@ -667,8 +667,21 @@ static inline int xen_domain_create(xc_interface *xc, uint32_t ssidref,
|
||||
|
||||
#if CONFIG_XEN_CTRL_INTERFACE_VERSION < 40800
|
||||
|
||||
struct xengnttab_grant_copy_segment {
|
||||
union xengnttab_copy_ptr {
|
||||
void *virt;
|
||||
struct {
|
||||
uint32_t ref;
|
||||
uint16_t offset;
|
||||
uint16_t domid;
|
||||
} foreign;
|
||||
} source, dest;
|
||||
uint16_t len;
|
||||
uint16_t flags;
|
||||
int16_t status;
|
||||
};
|
||||
|
||||
typedef void *xengnttab_grant_copy_segment_t;
|
||||
typedef struct xengnttab_grant_copy_segment xengnttab_grant_copy_segment_t;
|
||||
|
||||
static inline int xengnttab_grant_copy(xengnttab_handle *xgt, uint32_t count,
|
||||
xengnttab_grant_copy_segment_t *segs)
|
||||
|
Loading…
Reference in New Issue
Block a user