linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] RDMA/iwpm: Fix uninitialized error code in iwpm_send_mapinfo()
@ 2017-11-29  8:47 Geert Uytterhoeven
  2017-12-01 19:58 ` Nikolova, Tatyana E
  2017-12-13 18:19 ` [v2] " Jason Gunthorpe
  0 siblings, 2 replies; 3+ messages in thread
From: Geert Uytterhoeven @ 2017-11-29  8:47 UTC (permalink / raw)
  To: Tatyana Nikolova, Roland Dreier, Jason Gunthorpe, Doug Ledford
  Cc: Arnd Bergmann, linux-rdma, linux-kernel, Geert Uytterhoeven

With gcc-4.1.2:

    drivers/infiniband/core/iwpm_util.c: In function ‘iwpm_send_mapinfo’:
    drivers/infiniband/core/iwpm_util.c:647: warning: ‘ret’ may be used uninitialized in this function

Indeed, if nl_client is not found in any of the scanned has buckets, ret
will be used uninitialized.

Preinitialize ret to -EINVAL to fix this.

Fixes: 30dc5e63d6a5ad24 ("RDMA/core: Add support for iWARP Port Mapper user space service")
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
---
v2:
  - Use -EINVAL instead of zero,
  - Move the preinitialization to just before the loop, to catach future
    early offenders,
  - Drop RFC state.
---
 drivers/infiniband/core/iwpm_util.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/infiniband/core/iwpm_util.c b/drivers/infiniband/core/iwpm_util.c
index 3c4faadb8cddd7fd..81528f64061a49df 100644
--- a/drivers/infiniband/core/iwpm_util.c
+++ b/drivers/infiniband/core/iwpm_util.c
@@ -654,6 +654,7 @@ int iwpm_send_mapinfo(u8 nl_client, int iwpm_pid)
 	}
 	skb_num++;
 	spin_lock_irqsave(&iwpm_mapinfo_lock, flags);
+	ret = -EINVAL;
 	for (i = 0; i < IWPM_MAPINFO_HASH_SIZE; i++) {
 		hlist_for_each_entry(map_info, &iwpm_hash_bucket[i],
 				     hlist_node) {
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* RE: [PATCH v2] RDMA/iwpm: Fix uninitialized error code in iwpm_send_mapinfo()
  2017-11-29  8:47 [PATCH v2] RDMA/iwpm: Fix uninitialized error code in iwpm_send_mapinfo() Geert Uytterhoeven
@ 2017-12-01 19:58 ` Nikolova, Tatyana E
  2017-12-13 18:19 ` [v2] " Jason Gunthorpe
  1 sibling, 0 replies; 3+ messages in thread
From: Nikolova, Tatyana E @ 2017-12-01 19:58 UTC (permalink / raw)
  To: Geert Uytterhoeven, Roland Dreier, Jason Gunthorpe, Doug Ledford
  Cc: Arnd Bergmann, linux-rdma, linux-kernel


> -----Original Message-----
> From: Geert Uytterhoeven [mailto:geert@linux-m68k.org]
> Sent: Wednesday, November 29, 2017 2:48 AM
> To: Nikolova, Tatyana E <tatyana.e.nikolova@intel.com>; Roland Dreier
> <roland@purestorage.com>; Jason Gunthorpe <jgg@ziepe.ca>; Doug
> Ledford <dledford@redhat.com>
> Cc: Arnd Bergmann <arnd@arndb.de>; linux-rdma@vger.kernel.org; linux-
> kernel@vger.kernel.org; Geert Uytterhoeven <geert@linux-m68k.org>
> Subject: [PATCH v2] RDMA/iwpm: Fix uninitialized error code in
> iwpm_send_mapinfo()
> 
> With gcc-4.1.2:
> 
>     drivers/infiniband/core/iwpm_util.c: In function ‘iwpm_send_mapinfo’:
>     drivers/infiniband/core/iwpm_util.c:647: warning: ‘ret’ may be used
> uninitialized in this function
> 
> Indeed, if nl_client is not found in any of the scanned has buckets, ret will be
> used uninitialized.
> 
> Preinitialize ret to -EINVAL to fix this.
> 
> Fixes: 30dc5e63d6a5ad24 ("RDMA/core: Add support for iWARP Port Mapper
> user space service")
> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
> ---
> v2:
>   - Use -EINVAL instead of zero,
>   - Move the preinitialization to just before the loop, to catach future
>     early offenders,
>   - Drop RFC state.
> ---
>  drivers/infiniband/core/iwpm_util.c | 1 +
>  1 file changed, 1 insertion(+)
> 

Thanks.
Reviewed-by: Tatyana Nikolova <tatyana.e.nikolova@intel.com>

> diff --git a/drivers/infiniband/core/iwpm_util.c
> b/drivers/infiniband/core/iwpm_util.c
> index 3c4faadb8cddd7fd..81528f64061a49df 100644
> --- a/drivers/infiniband/core/iwpm_util.c
> +++ b/drivers/infiniband/core/iwpm_util.c
> @@ -654,6 +654,7 @@ int iwpm_send_mapinfo(u8 nl_client, int iwpm_pid)
>  	}
>  	skb_num++;
>  	spin_lock_irqsave(&iwpm_mapinfo_lock, flags);
> +	ret = -EINVAL;
>  	for (i = 0; i < IWPM_MAPINFO_HASH_SIZE; i++) {
>  		hlist_for_each_entry(map_info, &iwpm_hash_bucket[i],
>  				     hlist_node) {
> --
> 2.7.4

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [v2] RDMA/iwpm: Fix uninitialized error code in iwpm_send_mapinfo()
  2017-11-29  8:47 [PATCH v2] RDMA/iwpm: Fix uninitialized error code in iwpm_send_mapinfo() Geert Uytterhoeven
  2017-12-01 19:58 ` Nikolova, Tatyana E
@ 2017-12-13 18:19 ` Jason Gunthorpe
  1 sibling, 0 replies; 3+ messages in thread
From: Jason Gunthorpe @ 2017-12-13 18:19 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Tatyana Nikolova, Roland Dreier, Doug Ledford, Arnd Bergmann,
	linux-rdma, linux-kernel

On Wed, Nov 29, 2017 at 09:47:33AM +0100, Geert Uytterhoeven wrote:
> With gcc-4.1.2:
> 
>     drivers/infiniband/core/iwpm_util.c: In function ‘iwpm_send_mapinfo’:
>     drivers/infiniband/core/iwpm_util.c:647: warning: ‘ret’ may be used uninitialized in this function
> 
> Indeed, if nl_client is not found in any of the scanned has buckets, ret
> will be used uninitialized.
> 
> Preinitialize ret to -EINVAL to fix this.
> 
> Fixes: 30dc5e63d6a5ad24 ("RDMA/core: Add support for iWARP Port Mapper user space service")
> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
> Reviewed-by: Tatyana Nikolova <tatyana.e.nikolova@intel.com>
> v2:
>   - Use -EINVAL instead of zero,
>   - Move the preinitialization to just before the loop, to catach future
>     early offenders,
>   - Drop RFC state.
>  drivers/infiniband/core/iwpm_util.c | 1 +
>  1 file changed, 1 insertion(+)

Thanks applied to -next.

Jason

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-12-13 18:19 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-29  8:47 [PATCH v2] RDMA/iwpm: Fix uninitialized error code in iwpm_send_mapinfo() Geert Uytterhoeven
2017-12-01 19:58 ` Nikolova, Tatyana E
2017-12-13 18:19 ` [v2] " Jason Gunthorpe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).