RE: [PATCH] IB/qib: fix false-postive maybe-uninitialized warning

From: Weiny, Ira
Date: Mon Feb 27 2017 - 16:36:30 EST


>
> aarch64-linux-gcc-7 complains about code it doesn't fully understand:
>
> drivers/infiniband/hw/qib/qib_iba7322.c: In function
> 'qib_7322_txchk_change':
> include/asm-generic/bitops/non-atomic.h:105:35: error: 'shadow' may be used
> uninitialized in this function [-Werror=maybe-uninitialized]
>
> The code is right, and despite trying hard, I could not come up with a version
> that I liked better than just adding a fake initialization here to shut up the
> warning.
>
> Fixes: f931551bafe1 ("IB/qib: Add new qib driver for QLogic PCIe InfiniBand
> adapters")
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> ---

Sounds reasonable to me.

Acked-by: Ira Weiny <ira.weiny@xxxxxxxxx>

> drivers/infiniband/hw/qib/qib_iba7322.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/infiniband/hw/qib/qib_iba7322.c
> b/drivers/infiniband/hw/qib/qib_iba7322.c
> index 12c4208fd701..af9f596bb68b 100644
> --- a/drivers/infiniband/hw/qib/qib_iba7322.c
> +++ b/drivers/infiniband/hw/qib/qib_iba7322.c
> @@ -7068,7 +7068,7 @@ static void qib_7322_txchk_change(struct
> qib_devdata *dd, u32 start,
> unsigned long flags;
>
> while (wait) {
> - unsigned long shadow;
> + unsigned long shadow = 0;
> int cstart, previ = -1;
>
> /*
> --
> 2.9.0