All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>
To: Michael Ellerman <mpe@ellerman.id.au>, linuxppc-dev@lists.ozlabs.org
Cc: linux-mm@kvack.org, Michal Hocko <mhocko@suse.com>,
	Kefeng Wang <wangkefeng.wang@huawei.com>,
	Christophe Leroy <christophe.leroy@csgroup.eu>
Subject: Re: [PATCH 3/3] powerpc/mm: Use VMALLOC_START to validate addr
Date: Mon, 27 Jun 2022 10:14:37 +0530	[thread overview]
Message-ID: <877d52zpe2.fsf@linux.ibm.com> (raw)
In-Reply-To: <87bkui6apn.fsf@mpe.ellerman.id.au>

Michael Ellerman <mpe@ellerman.id.au> writes:

> "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com> writes:
>> Instead of high_memory use VMALLOC_START to validate that the address is
>> not in the vmalloc range.
>>
>> Cc: Kefeng Wang <wangkefeng.wang@huawei.com>
>> Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
>> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
>
> Isn't this really the fix for ffa0b64e3be5 ("powerpc: Fix
> virt_addr_valid() for 64-bit Book3E & 32-bit") ?

If we are looking for a simpler backport yet. But what commit ffa0b64e3be5 
does is correct. high_memory is suppose to be the top of direct mapped
address range. Hence checking for high_meory will also avoid vmalloc address.

If we take patch 1 then patch 3 is not really a fix. I would consider it
a cleanup to switch to a more familiar VMALLOC_START variable.

>
> cheers
>
>> diff --git a/arch/powerpc/include/asm/page.h b/arch/powerpc/include/asm/page.h
>> index e5f75c70eda8..256cad69e42e 100644
>> --- a/arch/powerpc/include/asm/page.h
>> +++ b/arch/powerpc/include/asm/page.h
>> @@ -134,7 +134,7 @@ static inline bool pfn_valid(unsigned long pfn)
>>  
>>  #define virt_addr_valid(vaddr)	({					\
>>  	unsigned long _addr = (unsigned long)vaddr;			\
>> -	_addr >= PAGE_OFFSET && _addr < (unsigned long)high_memory &&	\
>> +	_addr >= PAGE_OFFSET && _addr < (unsigned long)VMALLOC_START &&	\
>>  	pfn_valid(virt_to_pfn(_addr));					\
>>  })
>>  
>> -- 
>> 2.36.1


WARNING: multiple messages have this Message-ID (diff)
From: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>
To: Michael Ellerman <mpe@ellerman.id.au>, linuxppc-dev@lists.ozlabs.org
Cc: linux-mm@kvack.org, Kefeng Wang <wangkefeng.wang@huawei.com>,
	Michal Hocko <mhocko@suse.com>
Subject: Re: [PATCH 3/3] powerpc/mm: Use VMALLOC_START to validate addr
Date: Mon, 27 Jun 2022 10:14:37 +0530	[thread overview]
Message-ID: <877d52zpe2.fsf@linux.ibm.com> (raw)
In-Reply-To: <87bkui6apn.fsf@mpe.ellerman.id.au>

Michael Ellerman <mpe@ellerman.id.au> writes:

> "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com> writes:
>> Instead of high_memory use VMALLOC_START to validate that the address is
>> not in the vmalloc range.
>>
>> Cc: Kefeng Wang <wangkefeng.wang@huawei.com>
>> Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
>> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
>
> Isn't this really the fix for ffa0b64e3be5 ("powerpc: Fix
> virt_addr_valid() for 64-bit Book3E & 32-bit") ?

If we are looking for a simpler backport yet. But what commit ffa0b64e3be5 
does is correct. high_memory is suppose to be the top of direct mapped
address range. Hence checking for high_meory will also avoid vmalloc address.

If we take patch 1 then patch 3 is not really a fix. I would consider it
a cleanup to switch to a more familiar VMALLOC_START variable.

>
> cheers
>
>> diff --git a/arch/powerpc/include/asm/page.h b/arch/powerpc/include/asm/page.h
>> index e5f75c70eda8..256cad69e42e 100644
>> --- a/arch/powerpc/include/asm/page.h
>> +++ b/arch/powerpc/include/asm/page.h
>> @@ -134,7 +134,7 @@ static inline bool pfn_valid(unsigned long pfn)
>>  
>>  #define virt_addr_valid(vaddr)	({					\
>>  	unsigned long _addr = (unsigned long)vaddr;			\
>> -	_addr >= PAGE_OFFSET && _addr < (unsigned long)high_memory &&	\
>> +	_addr >= PAGE_OFFSET && _addr < (unsigned long)VMALLOC_START &&	\
>>  	pfn_valid(virt_to_pfn(_addr));					\
>>  })
>>  
>> -- 
>> 2.36.1

  reply	other threads:[~2022-06-27  4:44 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-23 12:29 [PATCH 1/3] powerpc/memhotplug: Add add_pages override for PPC Aneesh Kumar K.V
2022-06-23 12:29 ` Aneesh Kumar K.V
2022-06-23 12:29 ` [PATCH 2/3] powerpc/mm: Update max/min_low_pfn in the same function Aneesh Kumar K.V
2022-06-23 12:29 ` [PATCH 3/3] powerpc/mm: Use VMALLOC_START to validate addr Aneesh Kumar K.V
2022-06-23 12:29   ` Aneesh Kumar K.V
2022-06-24  2:45   ` Michael Ellerman
2022-06-24  2:45     ` Michael Ellerman
2022-06-27  4:44     ` Aneesh Kumar K.V [this message]
2022-06-27  4:44       ` Aneesh Kumar K.V
2022-06-24 11:51   ` Christophe Leroy
2022-06-24 11:51     ` Christophe Leroy
2022-06-27  4:49     ` Aneesh Kumar K.V
2022-06-27  4:49       ` Aneesh Kumar K.V
2022-06-27  5:42   ` Christophe Leroy
2022-06-27  5:42     ` Christophe Leroy
2022-06-27  6:49     ` Aneesh Kumar K.V
2022-06-27  6:49       ` Aneesh Kumar K.V

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=877d52zpe2.fsf@linux.ibm.com \
    --to=aneesh.kumar@linux.ibm.com \
    --cc=christophe.leroy@csgroup.eu \
    --cc=linux-mm@kvack.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mhocko@suse.com \
    --cc=mpe@ellerman.id.au \
    --cc=wangkefeng.wang@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.