> -----Original Message----- > From: Dan Ben Yosef [mailto:[email protected]] > Sent: Sunday, January 19, 2014 12:20 AM > To: Weiny, Ira > Cc: [email protected] > Subject: Re: [PATCH infiniband-diags] libibnetdisc/ibnetdisc.c: improve log > information to stdout > > On 15:37 Sun 12 Jan , Weiny, Ira wrote: > > > -----Original Message----- > > > From: Dan Ben Yosef [mailto:[email protected]] > > > Sent: Wednesday, January 01, 2014 10:44 PM > > > Subject: [PATCH infiniband-diags] libibnetdisc/ibnetdisc.c: improve > > > log information to stdout > > > > > > Write to stdout the route-path when smp returns with status error. > > > > As part of a library this will affect many tools outputs and perhaps > subsequently any scripts written against those tools. > > > > Is this really a requirement or simply a "nice to have"? > That was a customer request to get the query path to stdout when getting an > error. > > This way when getting smp error they could see DR path to the node in > stdout.
I think this is ok, applied thanks, Ira > > -- Dan > > > > > Ira > > > > > > > > Signed-off-by: Dan Ben Yosef <[email protected]> > > > --- > > > libibnetdisc/src/internal.h | 10 +++++++--- > > > libibnetdisc/src/query_smp.c | 6 ++++++ > > > 2 files changed, 13 insertions(+), 3 deletions(-) > > > > > > diff --git a/libibnetdisc/src/internal.h > > > b/libibnetdisc/src/internal.h index 1ccd29c..47b2a4c 100644 > > > --- a/libibnetdisc/src/internal.h > > > +++ b/libibnetdisc/src/internal.h > > > @@ -42,12 +42,16 @@ > > > #include <complib/cl_qmap.h> > > > #include <glib.h> > > > > > > +#define IBND_ERROR(fmt, ...) \ > > > + fprintf(stderr, "%s:%u; " fmt, __FILE__, __LINE__, ## > > > __VA_ARGS__) > > > + > > > +#define IBND_INFO(fmt, ...) \ > > > + printf("%s:%u; " fmt, __FILE__, __LINE__, ## > > > __VA_ARGS__); > > > + > > > #define IBND_DEBUG(fmt, ...) \ > > > if (ibdebug) { \ > > > - printf("%s:%u; " fmt, __FILE__, __LINE__, ## > > > __VA_ARGS__); \ > > > + IBND_INFO(fmt,## __VA_ARGS__); \ > > > } > > > -#define IBND_ERROR(fmt, ...) \ > > > - fprintf(stderr, "%s:%u; " fmt, __FILE__, __LINE__, ## > > > __VA_ARGS__) > > > > > > /* HASH table defines */ > > > #define HASHGUID(guid) ((uint32_t)(((uint32_t)(guid) * 101) ^ > > > ((uint32_t)((guid) >> 32) * 103))) diff --git > > > a/libibnetdisc/src/query_smp.c b/libibnetdisc/src/query_smp.c index > > > 28620b4..ac4984e 100644 > > > --- a/libibnetdisc/src/query_smp.c > > > +++ b/libibnetdisc/src/query_smp.c > > > @@ -192,6 +192,9 @@ static int process_one_recv(smp_engine_t * > engine) > > > goto error; > > > > > > if ((status = umad_status(umad))) { > > > + IBND_INFO("umad (%s Attr 0x%x:%u) bad status %d; %s\n", > > > + portid2str(&smp->path), smp->rpc.attr.id, > > > + smp->rpc.attr.mod, status, strerror(status)); > > > IBND_ERROR("umad (%s Attr 0x%x:%u) bad status %d; > %s\n", > > > portid2str(&smp->path), smp->rpc.attr.id, > > > smp->rpc.attr.mod, status, strerror(status)); @@ - > > > 199,6 +202,9 @@ static int process_one_recv(smp_engine_t * engine) > > > rc = mlnx_ext_port_info_err(engine, smp, mad, > > > smp->cb_data); > > > } else if ((status = mad_get_field(mad, 0, IB_DRSMP_STATUS_F))) { > > > + IBND_INFO("mad (%s Attr 0x%x:%u) bad status 0x%x\n", > > > + portid2str(&smp->path), smp->rpc.attr.id, > > > + smp->rpc.attr.mod, status); > > > IBND_ERROR("mad (%s Attr 0x%x:%u) bad status 0x%x\n", > > > portid2str(&smp->path), smp->rpc.attr.id, > > > smp->rpc.attr.mod, status); > > > -- > > > 1.7.1 > > > > -- > > To unsubscribe from this list: send the line "unsubscribe linux-rdma" > > in the body of a message to [email protected] More > majordomo > > info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
