linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Anshuman Khandual <anshuman.khandual@arm.com>
To: Kefeng Wang <wangkefeng.wang@huawei.com>,
	catalin.marinas@arm.com, will@kernel.org,
	akpm@linux-foundation.org, linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org
Cc: linux-mm@kvack.org, hch@infradead.org, arnd@arndb.de
Subject: Re: [PATCH v2 5/5] arm64: Add HAVE_IOREMAP_PROT support
Date: Thu, 19 May 2022 10:36:33 +0530	[thread overview]
Message-ID: <381ed251-ecd0-4047-6ba3-793f23904b2c@arm.com> (raw)
In-Reply-To: <20220429103225.75121-6-wangkefeng.wang@huawei.com>


On 4/29/22 16:02, Kefeng Wang wrote:
> With ioremap_prot() defination from generic ioremap, also move

s/defination/definition  ^^^^

> pte_pgprot() from hugetlbpage.c into pgtable.h, then arm64 could
> have HAVE_IOREMAP_PROT, which will enable generic_access_phys()
> code.
> 
> Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>

Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com>

> ---
>  .../features/vm/ioremap_prot/arch-support.txt          |  2 +-
>  arch/arm64/Kconfig                                     |  1 +
>  arch/arm64/include/asm/pgtable.h                       | 10 ++++++++++
>  arch/arm64/mm/hugetlbpage.c                            | 10 ----------
>  4 files changed, 12 insertions(+), 11 deletions(-)
> 
> diff --git a/Documentation/features/vm/ioremap_prot/arch-support.txt b/Documentation/features/vm/ioremap_prot/arch-support.txt
> index a6dcbe5f47b6..b39ad5d61216 100644
> --- a/Documentation/features/vm/ioremap_prot/arch-support.txt
> +++ b/Documentation/features/vm/ioremap_prot/arch-support.txt
> @@ -9,7 +9,7 @@
>      |       alpha: | TODO |
>      |         arc: |  ok  |
>      |         arm: | TODO |
> -    |       arm64: | TODO |
> +    |       arm64: |  ok  |
>      |        csky: | TODO |
>      |       h8300: | TODO |
>      |     hexagon: | TODO |
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index 56673209fdb9..5e5889049af0 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -186,6 +186,7 @@ config ARM64
>  	select HAVE_FUNCTION_GRAPH_TRACER
>  	select HAVE_GCC_PLUGINS
>  	select HAVE_HW_BREAKPOINT if PERF_EVENTS
> +	select HAVE_IOREMAP_PROT
>  	select HAVE_IRQ_TIME_ACCOUNTING
>  	select HAVE_KVM
>  	select HAVE_NMI
> diff --git a/arch/arm64/include/asm/pgtable.h b/arch/arm64/include/asm/pgtable.h
> index dff2b483ea50..1402a2739024 100644
> --- a/arch/arm64/include/asm/pgtable.h
> +++ b/arch/arm64/include/asm/pgtable.h
> @@ -402,6 +402,16 @@ static inline pgprot_t mk_pmd_sect_prot(pgprot_t prot)
>  	return __pgprot((pgprot_val(prot) & ~PMD_TABLE_BIT) | PMD_TYPE_SECT);
>  }
>  
> +/*
> + * Select all bits except the pfn
> + */
> +static inline pgprot_t pte_pgprot(pte_t pte)
> +{
> +	unsigned long pfn = pte_pfn(pte);
> +
> +	return __pgprot(pte_val(pfn_pte(pfn, __pgprot(0))) ^ pte_val(pte));
> +}
> +
>  #ifdef CONFIG_NUMA_BALANCING
>  /*
>   * See the comment in include/linux/pgtable.h
> diff --git a/arch/arm64/mm/hugetlbpage.c b/arch/arm64/mm/hugetlbpage.c
> index cbace1c9e137..38d03406f6aa 100644
> --- a/arch/arm64/mm/hugetlbpage.c
> +++ b/arch/arm64/mm/hugetlbpage.c
> @@ -100,16 +100,6 @@ int pud_huge(pud_t pud)
>  #endif
>  }
>  
> -/*
> - * Select all bits except the pfn
> - */
> -static inline pgprot_t pte_pgprot(pte_t pte)
> -{
> -	unsigned long pfn = pte_pfn(pte);
> -
> -	return __pgprot(pte_val(pfn_pte(pfn, __pgprot(0))) ^ pte_val(pte));
> -}
> -
>  static int find_num_contig(struct mm_struct *mm, unsigned long addr,
>  			   pte_t *ptep, size_t *pgsize)
>  {


  parent reply	other threads:[~2022-05-19  5:06 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-29 10:32 [PATCH v2 0/5] arm64: Cleanup ioremap() and support ioremap_prot() Kefeng Wang
2022-04-29 10:32 ` [PATCH v2 1/5] mm: ioremap: Use more sensibly name in ioremap_prot() Kefeng Wang
2022-05-02  9:38   ` Anshuman Khandual
2022-04-29 10:32 ` [PATCH v2 2/5] mm: ioremap: Setup phys_addr of struct vm_struct Kefeng Wang
2022-05-02  9:50   ` Anshuman Khandual
2022-04-29 10:32 ` [PATCH v2 3/5] mm: ioremap: Add arch_ioremap/iounmap() Kefeng Wang
2022-05-19  4:46   ` Anshuman Khandual
2022-05-19  6:24     ` Kefeng Wang
2022-04-29 10:32 ` [PATCH v2 4/5] arm64: mm: Convert to GENERIC_IOREMAP Kefeng Wang
2022-04-29 23:15   ` kernel test robot
2022-05-02  3:27   ` [PATCH v2 resend " Kefeng Wang
2022-05-16 22:47     ` Catalin Marinas
2022-05-19  5:34     ` Anshuman Khandual
2022-05-19  6:31       ` Kefeng Wang
2022-04-29 10:32 ` [PATCH v2 5/5] arm64: Add HAVE_IOREMAP_PROT support Kefeng Wang
2022-05-16 22:48   ` Catalin Marinas
2022-05-19  5:06   ` Anshuman Khandual [this message]
2022-05-10  7:06 ` [PATCH v2 0/5] arm64: Cleanup ioremap() and support ioremap_prot() Kefeng Wang
2022-05-16 22:51 ` Catalin Marinas
2022-05-19  3:37   ` Kefeng Wang

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=381ed251-ecd0-4047-6ba3-793f23904b2c@arm.com \
    --to=anshuman.khandual@arm.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=catalin.marinas@arm.com \
    --cc=hch@infradead.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=wangkefeng.wang@huawei.com \
    --cc=will@kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox