[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2 1/3] xen: fix usage of ENODATA
On Fri, 23 May 2014, Roger Pau Monne wrote: > ENODATA doesn't exist on FreeBSD, so ENODATA errors returned by the > hypervisor are translated to ENOENT. > > Also, the error code is returned in errno if the call returns -1, so > compare the error code with the value in errno instead of the value > returned by the function. > > Signed-off-by: Roger Pau Monnà <roger.pau@xxxxxxxxxx> > Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx > Cc: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> > Cc: Anthony Perard <anthony.perard@xxxxxxxxxx> > --- > Changes since v1: > - Define ENODATA to ENOENT for platforms that don't have ENODATA. > --- > xen-hvm.c | 7 +++++-- > 1 files changed, 5 insertions(+), 2 deletions(-) > > diff --git a/xen-hvm.c b/xen-hvm.c > index a64486c..a414105 100644 > --- a/xen-hvm.c > +++ b/xen-hvm.c > @@ -499,11 +499,14 @@ static void xen_sync_dirty_bitmap(XenIOState *state, > start_addr >> TARGET_PAGE_BITS, npages, > bitmap); > if (rc < 0) { > - if (rc != -ENODATA) { > +#ifndef ENODATA > +#define ENODATA ENOENT > +#endif I wonder if it makes sense to have this in a more generic header, lile include/qemu/osdep.h? > + if (errno == ENODATA) { > memory_region_set_dirty(framebuffer, 0, size); > DPRINTF("xen: track_dirty_vram failed (0x" TARGET_FMT_plx > ", 0x" TARGET_FMT_plx "): %s\n", > - start_addr, start_addr + size, strerror(-rc)); > + start_addr, start_addr + size, strerror(errno)); > } > return; > } > -- > 1.7.7.5 (Apple Git-26) > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |