[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20170912150737.envdkppnpx5xskfy@dhcp22.suse.cz>
Date: Tue, 12 Sep 2017 17:07:37 +0200
From: Michal Hocko <mhocko@...nel.org>
To: gurugio@...il.com
Cc: linux-mm@...ck.org, linux-kernel@...r.kernel.org,
Gioh Kim <gurugio@...mail.net>,
Gioh Kim <gi-oh.kim@...fitbricks.com>
Subject: Re: [RFC] mm/memblock.c: using uninitialized value idx in
memblock_add_range()
On Sat 09-09-17 00:15:33, gurugio@...il.com wrote:
> From: Gioh Kim <gurugio@...mail.net>
>
> In memblock_add_range(), idx variable is a local value
> but I cannot find initialization of idx value.
> I checked idx value on my Qemu emulator. It was zero.
> Is there any hidden initialization code?
Yes for_each_memblock_type. Ugly as hell! Something to clean up I guess.
Just make the index explicit argument of the macro.
>
> Signed-off-by: Gioh Kim <gi-oh.kim@...fitbricks.com>
> ---
> mm/memblock.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/mm/memblock.c b/mm/memblock.c
> index 7b8a5db..23374bc 100644
> --- a/mm/memblock.c
> +++ b/mm/memblock.c
> @@ -515,7 +515,7 @@ int __init_memblock memblock_add_range(struct memblock_type *type,
> bool insert = false;
> phys_addr_t obase = base;
> phys_addr_t end = base + memblock_cap_size(base, &size);
> - int idx, nr_new;
> + int idx = 0, nr_new;
> struct memblock_region *rgn;
>
> if (!size)
> --
> 2.7.4
--
Michal Hocko
SUSE Labs
Powered by blists - more mailing lists