The win8 compiler appears to be even more brain dead than its predecessor. It complains of an uninitialized variable mad in rpc.c around line 213. Fix this by removing the redirect variable and using while (1) / break instead.
Problem was reported by Leonid Keller <[email protected]> Signed-off-by: Sean Hefty <[email protected]> Reviewed-by: Hal Rosenstock <[email protected]> --- src/rpc.c | 9 ++++----- 1 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/rpc.c b/src/rpc.c index d20c321..19a5a70 100644 --- a/src/rpc.c +++ b/src/rpc.c @@ -213,13 +213,12 @@ void *mad_rpc(const struct ibmad_port *port, ib_rpc_t * rpc, { int status, len; uint8_t sndbuf[1024], rcvbuf[1024], *mad; - int redirect = 1; ib_rpc_v1_t *rpcv1 = (ib_rpc_v1_t *)rpc; int error = 0; if ((rpc->mgtclass & IB_MAD_RPC_VERSION_MASK) == IB_MAD_RPC_VERSION1) rpcv1->error = 0; - while (redirect) { + do { len = 0; memset(sndbuf, 0, umad_size() + IB_MAD_SIZE); @@ -247,10 +246,10 @@ void *mad_rpc(const struct ibmad_port *port, ib_rpc_t * rpc, /* update dport for next request and retry */ /* bail if redirection fails */ if (redirect_port(dport, mad)) - redirect = 0; + break; } else - redirect = 0; - } + break; + } while (1); if ((rpc->mgtclass & IB_MAD_RPC_VERSION_MASK) == IB_MAD_RPC_VERSION1) rpcv1->error = error; _______________________________________________ ofw mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw
