[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 02/14] libxl: Propagate errno from hypercall instead of anything else.
On Mon, 2015-03-16 at 11:39 -0400, Konrad Rzeszutek Wilk wrote: > After we have done the hypercall - the errno has the failure > code. However our usage of pthread and munmap can trigger them > to manipulate the errno with their failure values. That would > be bad as what we care about is just the hypercall error value. > > Another solution to this would be to save the 'errno' from > pthread/munmap/madvise as an extra parameter to be analyzed > later. However the call-sites above us do not care about it. > > Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx> > --- > tools/libxc/xc_freebsd_osdep.c | 3 +++ > tools/libxc/xc_hcall_buf.c | 6 ++++++ > tools/libxc/xc_linux_osdep.c | 3 +++ > 3 files changed, 12 insertions(+) > > diff --git a/tools/libxc/xc_freebsd_osdep.c b/tools/libxc/xc_freebsd_osdep.c > index 151d3bf..bb6d240 100644 > --- a/tools/libxc/xc_freebsd_osdep.c > +++ b/tools/libxc/xc_freebsd_osdep.c > @@ -125,10 +125,13 @@ static void > freebsd_privcmd_free_hypercall_buffer(xc_interface *xch, > int npages) > { > > + int saved_errno = errno; > /* Unlock pages */ > munlock(ptr, npages * XC_PAGE_SIZE); > > munmap(ptr, npages * XC_PAGE_SIZE); > + /* We MUST propagate the hypercall errno, not unmap calls. */ If you have cause to resend then: /* We MUST Propagate the hypercall's ernno, not the unmap call's. */. > + /* Ignore the pthread errors. */ s/the // (both throughout). Not a big deal but if it needs resending anyway Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |