RDMA/cma: Fix gcc warning

Building cma.o triggers this gcc warning:

    drivers/infiniband/core/cma.c: In function ‘rdma_resolve_addr’:
    drivers/infiniband/core/cma.c:465:23: warning: ‘port’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    drivers/infiniband/core/cma.c:426:5: note: ‘port’ was declared here

This is a false positive, as "port" will always be initialized if we're
at "found". But if we assign to "id_priv->id.port_num" directly, we can
drop "port". That will, obviously, silence gcc.

Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
This commit is contained in:
Paul Bolle 2013-07-24 15:06:07 -07:00 committed by Roland Dreier
parent 3b2f64d00c
commit 8fb488d740
1 changed files with 3 additions and 4 deletions

View File

@ -423,7 +423,7 @@ static int cma_resolve_ib_dev(struct rdma_id_private *id_priv)
struct sockaddr_ib *addr; struct sockaddr_ib *addr;
union ib_gid gid, sgid, *dgid; union ib_gid gid, sgid, *dgid;
u16 pkey, index; u16 pkey, index;
u8 port, p; u8 p;
int i; int i;
cma_dev = NULL; cma_dev = NULL;
@ -443,7 +443,7 @@ static int cma_resolve_ib_dev(struct rdma_id_private *id_priv)
if (!memcmp(&gid, dgid, sizeof(gid))) { if (!memcmp(&gid, dgid, sizeof(gid))) {
cma_dev = cur_dev; cma_dev = cur_dev;
sgid = gid; sgid = gid;
port = p; id_priv->id.port_num = p;
goto found; goto found;
} }
@ -451,7 +451,7 @@ static int cma_resolve_ib_dev(struct rdma_id_private *id_priv)
dgid->global.subnet_prefix)) { dgid->global.subnet_prefix)) {
cma_dev = cur_dev; cma_dev = cur_dev;
sgid = gid; sgid = gid;
port = p; id_priv->id.port_num = p;
} }
} }
} }
@ -462,7 +462,6 @@ static int cma_resolve_ib_dev(struct rdma_id_private *id_priv)
found: found:
cma_attach_to_dev(id_priv, cma_dev); cma_attach_to_dev(id_priv, cma_dev);
id_priv->id.port_num = port;
addr = (struct sockaddr_ib *) cma_src_addr(id_priv); addr = (struct sockaddr_ib *) cma_src_addr(id_priv);
memcpy(&addr->sib_addr, &sgid, sizeof sgid); memcpy(&addr->sib_addr, &sgid, sizeof sgid);
cma_translate_ib(addr, &id_priv->id.route.addr.dev_addr); cma_translate_ib(addr, &id_priv->id.route.addr.dev_addr);