On Thu, 2019-08-22 at 21:26 +0800, Baoquan He wrote:
> On 08/22/19 at 08:32am, Qian Cai wrote:
> > MAX_MEMMAP_REGIONS is a macro that equal to 4. "i" is static local
> > variable that default to 0. The comparison "i >= MAX_MEMMAP_REGIONS"
> > will always be false.
> 
> Seems not true. mem_avoid_memmap() could be invoked many times if
> multiple memmap= added. It will carry the value accumulated from
> the past.

Ah, I am still a newbie in C after all those years. Sorry for the noise.

> 
> > 
> > Signed-off-by: Qian Cai <c...@lca.pw>
> > ---
> >  arch/x86/boot/compressed/kaslr.c | 3 ---
> >  1 file changed, 3 deletions(-)
> > 
> > diff --git a/arch/x86/boot/compressed/kaslr.c
> > b/arch/x86/boot/compressed/kaslr.c
> > index 2e53c056ba20..a4a5a88edb94 100644
> > --- a/arch/x86/boot/compressed/kaslr.c
> > +++ b/arch/x86/boot/compressed/kaslr.c
> > @@ -176,9 +176,6 @@ static void mem_avoid_memmap(char *str)
> >  {
> >     static int i;
> >  
> > -   if (i >= MAX_MEMMAP_REGIONS)
> > -           return;
> > -
> >     while (str && (i < MAX_MEMMAP_REGIONS)) {
> >             int rc;
> >             unsigned long long start, size;
> > -- 
> > 1.8.3.1
> > 

Reply via email to