Re: [PATCH 2/2] x86/boot/KASLR: Fix unused variable warning

From: Dave Hansen
Date: Tue Mar 03 2020 - 17:56:51 EST


On 3/2/20 10:52 PM, Zhenzhong Duan wrote:
> Local variable 'i' is referenced only when CONFIG_MEMORY_HOTREMOVE and
> CONFIG_ACPI are defined, but definition of variable 'i' is out of guard.
> If any of the two macros is undefined, below warning triggers during
> build, fix it by moving 'i' in the guard.
>
> arch/x86/boot/compressed/kaslr.c:698:6: warning: unused variable âiâ [-Wunused-variable]
...
> diff --git a/arch/x86/boot/compressed/kaslr.c b/arch/x86/boot/compressed/kaslr.c
> index d7408af55738..62bc46684581 100644
> --- a/arch/x86/boot/compressed/kaslr.c
> +++ b/arch/x86/boot/compressed/kaslr.c
> @@ -695,7 +695,6 @@ static bool process_mem_region(struct mem_vector *region,
> unsigned long long minimum,
> unsigned long long image_size)
> {
> - int i;
> /*
> * If no immovable memory found, or MEMORY_HOTREMOVE disabled,
> * use @region directly.
> @@ -711,6 +710,7 @@ static bool process_mem_region(struct mem_vector *region,
> }
>
> #if defined(CONFIG_MEMORY_HOTREMOVE) && defined(CONFIG_ACPI)
> + int i;

Won't this just result in a different warning since it now it will
declare 'i' in the middle of the function once CONFIG_MEMORY_HOTREMOVE
and ACPI are enabled?