Re: [PATCH rdma-core] librdmacm: Store error code from getaddrinfo in errno

Yuval Shaia
2017-11-09T07:57:10Z

On Tue, Nov 07, 2017 at 08:56:02AM -0700, Jason Gunthorpe wrote:
> On Tue, Nov 07, 2017 at 11:50:38AM +0200, Yuval Shaia wrote:
> > +++ b/librdmacm/addrinfo.c
> > @@ -227,7 +227,7 @@ static int ucma_getaddrinfo(const char *node, const char *service,
> > ret = getaddrinfo(node, service, NULL, &ai);
> > }
> > if (ret)
> > - return ret;
> > + return ERR(ret);

Fine, dropping this, will fix only the printouts then.

>
> No, you cannot assign the return value from getaddrinfo directly errno, they
> are not the same number space.
>
> > diff --git a/librdmacm/examples/cmatose.c b/librdmacm/examples/cmatose.c
> > index b1c9dd13..625849ce 100644
> > +++ b/librdmacm/examples/cmatose.c
> > @@ -507,7 +507,7 @@ static int run_server(void)
> >
> > ret = get_rdma_addr(src_addr, dst_addr, port, &hints, &test.rai);
> > if (ret) {
> > - printf("cmatose: getrdmaaddr error: %s\n", gai_strerror(ret));
> > + printf("cmatose: getrdmaaddr error: %s\n", gai_strerror(errno));
>
> Also nope, gai_strerror does not process errnos.
>
> Jason
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html