[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1470159925.18081.21.camel@redhat.com>
Date: Tue, 02 Aug 2016 13:45:25 -0400
From: Doug Ledford <dledford@...hat.com>
To: Arnd Bergmann <arnd@...db.de>
Cc: linux-rdma@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] infiniband: shut up a maybe-uninitialized warning
On Mon, 2016-07-04 at 17:06 +0200, Arnd Bergmann wrote:
> The powerpc64 default configuration leads to warnings for the
> infiniband
> core code:
>
> infiniband/core/cma.c: In function 'cma_get_net_dev':
> infiniband/core/cma.c:1242:12: warning:
> 'src_addr_storage.sin_addr.s_addr' may be used uninitialized in this
> function [-Wmaybe-uninitialized]
>
> The code looks correct to me, and I don't see the warnings on the
> other architectures, so this is a dumb change to add an unneeded
> initialization to the variables in order to shut up the warning.
>
> Signed-off-by: Arnd Bergmann <arnd@...db.de>
> Link: http://arm-soc.lixom.net/buildlogs/mainline/v4.7-
> rc6/buildall.powerpc.ppc64_defconfig.log.passed
I thought about taking this, but I also looked over the code and it
looks correct to me. This is a semi-hot path in the connection bring
up code, so I'm loathe to put in sizeof(struct sockaddr_storage) * 2 of
needless memory writes. So, I dropped this patch. Hopefully, ppc64
compiler will straighten its warnings out soon.
> ---
> drivers/infiniband/core/cma.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/infiniband/core/cma.c
> b/drivers/infiniband/core/cma.c
> index a3c9930f1f93..924ac237310b 100644
> --- a/drivers/infiniband/core/cma.c
> +++ b/drivers/infiniband/core/cma.c
> @@ -1309,7 +1309,7 @@ static bool validate_net_dev(struct net_device
> *net_dev,
> static struct net_device *cma_get_net_dev(struct ib_cm_event
> *ib_event,
> const struct cma_req_info
> *req)
> {
> - struct sockaddr_storage listen_addr_storage,
> src_addr_storage;
> + struct sockaddr_storage listen_addr_storage = {},
> src_addr_storage = {};
> struct sockaddr *listen_addr = (struct sockaddr
> *)&listen_addr_storage,
> *src_addr = (struct sockaddr
> *)&src_addr_storage;
> struct net_device *net_dev;
--
Doug Ledford <dledford@...hat.com>
GPG KeyID: 0E572FDD
Download attachment "signature.asc" of type "application/pgp-signature" (820 bytes)
Powered by blists - more mailing lists