Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1486517 > unrolled thread

[PATCH] sbitmap: initialize weight to zero

Started byColin King <colin.king@canonical.com>
First post2016-09-19 15:40 +0200
Last post2016-09-19 16:30 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] sbitmap: initialize weight to zero Colin King <colin.king@canonical.com> - 2016-09-19 15:40 +0200
    Re: [PATCH] sbitmap: initialize weight to zero Jens Axboe <axboe@kernel.dk> - 2016-09-19 16:30 +0200

#1486517 — [PATCH] sbitmap: initialize weight to zero

FromColin King <colin.king@canonical.com>
Date2016-09-19 15:40 +0200
Subject[PATCH] sbitmap: initialize weight to zero
Message-ID<sj6XD-62j-17@gated-at.bofh.it>
From: Colin Ian King <colin.king@canonical.com>

Variable weight is not being initialized to zero before it is
used to compute the weight sum. Ensure it is initialized to zero.

Found with static analysis with cppcheck:
[lib/sbitmap.c:177]: (error) Uninitialized variable: weight

Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 lib/sbitmap.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/sbitmap.c b/lib/sbitmap.c
index e408089..2cecf05 100644
--- a/lib/sbitmap.c
+++ b/lib/sbitmap.c
@@ -169,7 +169,7 @@ EXPORT_SYMBOL_GPL(sbitmap_any_bit_clear);
 
 unsigned int sbitmap_weight(const struct sbitmap *sb)
 {
-	unsigned int i, weight;
+	unsigned int i, weight = 0;
 
 	for (i = 0; i < sb->map_nr; i++) {
 		const struct sbitmap_word *word = &sb->map[i];
-- 
2.9.3

[toc] | [next] | [standalone]


#1486538

FromJens Axboe <axboe@kernel.dk>
Date2016-09-19 16:30 +0200
Message-ID<sj7K1-6ya-9@gated-at.bofh.it>
In reply to#1486517
On 09/19/2016 07:34 AM, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
>
> Variable weight is not being initialized to zero before it is
> used to compute the weight sum. Ensure it is initialized to zero.
>
> Found with static analysis with cppcheck:
> [lib/sbitmap.c:177]: (error) Uninitialized variable: weight

Thanks, applied. Strange, this is an old issue, it was just moved to 
this file. It should have triggered on mainline too. My compiler doesn't 
complain here:

$ gcc --version
gcc (Ubuntu 6.2.0-3ubuntu11~16.04) 6.2.0 20160901

-- 
Jens Axboe

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web