[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2 3/3] xen-hvm: try to use xenforeignmemory_map_resource() to map ioreq pages
> -----Original Message----- > From: Anthony PERARD [mailto:anthony.perard@xxxxxxxxxx] > Sent: 15 May 2018 17:17 > To: Paul Durrant <Paul.Durrant@xxxxxxxxxx> > Cc: qemu-devel@xxxxxxxxxx; xen-devel@xxxxxxxxxxxxxxxxxxxx; Stefano > Stabellini <sstabellini@xxxxxxxxxx> > Subject: Re: [PATCH v2 3/3] xen-hvm: try to use > xenforeignmemory_map_resource() to map ioreq pages > > On Tue, May 15, 2018 at 04:45:25PM +0100, Paul Durrant wrote: > > > > diff --git a/include/hw/xen/xen_common.h > > > b/include/hw/xen/xen_common.h > > > > index 5f1402b494..d925751040 100644 > > > > --- a/include/hw/xen/xen_common.h > > > > +++ b/include/hw/xen/xen_common.h > > > > @@ -119,6 +119,20 @@ static inline int > > > xendevicemodel_pin_memory_cacheattr( > > > > return xc_domain_pin_memory_cacheattr(xen_xc, domid, start, > end, > > > type); > > > > } > > > > > > > > +typedef void xenforeignmemory_resource_handle; > > > > + > > > > +#define XENMEM_resource_ioreq_server_frame_bufioreq 0 > > > > +#define XENMEM_resource_ioreq_server_frame_ioreq(n) (1 + (n)) > > > > + > > > > +static inline xenforeignmemory_resource_handle > > > *xenforeignmemory_map_resource( > > > > + xenforeignmemory_handle *fmem, domid_t domid, unsigned int > type, > > > > + unsigned int id, unsigned long frame, unsigned long nr_frames, > > > > + void **paddr, int prot, int flags) > > > > +{ > > > > + errno = EOPNOTSUPP; > > > > > > I think ENOSYS would be better. EOPNOTSUPP seems to be for sockets. > > > > > > > No, EOPNOTSUPP is more general than that and is convention for > unimplemented API operations elsewhere. ENOSYS is supposed to strictly > mean 'system call not implemented' but we use it for hypercalls in Xen, > leading to occasional fun with Linux checkpatch.pl. > > In man errno, I have: > ENOTSUP Operation not supported (POSIX.1-2001) > EOPNOTSUPP Operation not supported on socket (POSIX.1-2001). > ENOSYS Function not implemented (POSIX.1-2001). > > But I guess any of these would work. My reference is the non-Linux definitions in tools/libs/foreignmemory/private.h in the Xen tree. The one for xenforeignmemory_map_resource() is as follows: static inline int osdep_xenforeignmemory_map_resource( xenforeignmemory_handle *fmem, xenforeignmemory_resource_handle *fres) { errno = EOPNOTSUPP; return -1; } So I'll stick with EOPNOTSUPP. Cheers, Paul > > -- > Anthony PERARD _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |