mbox series

[v2,0/5] arm64: Cleanup ioremap() and support ioremap_prot()

Message ID 20220429103225.75121-1-wangkefeng.wang@huawei.com (mailing list archive)
Headers show
Series arm64: Cleanup ioremap() and support ioremap_prot() | expand

Message

Kefeng Wang April 29, 2022, 10:32 a.m. UTC
1. Enhance generic ioremap to make it more useful.
2. Let's arm64 use GENERIC_IOREMAP to cleanup code.
3. Support HAVE_IOREMAP_PROT on arm64, which enable generic_access_phys(),
   it is useful when debug(eg, gdb) via access_process_vm device memory
   infrastructure.

v2:
- s/addr/phys_addr in ioremap_prot, suggested by Andrew Morton 
- rename arch_ioremap/iounmap_check to arch_ioremap/iounmad
  and change return value, per Christoph Hellwig and Andrew Morton
- and use 'ifndef arch_ioremap' instead of weak function, per Arnd Bergmann
- collect ack/review

Kefeng Wang (5):
  mm: ioremap: Use more sensibly name in ioremap_prot()
  mm: ioremap: Setup phys_addr of struct vm_struct
  mm: ioremap: Add arch_ioremap/iounmap()
  arm64: mm: Convert to GENERIC_IOREMAP
  arm64: Add HAVE_IOREMAP_PROT support

 .../features/vm/ioremap_prot/arch-support.txt |  2 +-
 arch/arm64/Kconfig                            |  2 +
 arch/arm64/include/asm/io.h                   | 20 +++--
 arch/arm64/include/asm/pgtable.h              | 10 +++
 arch/arm64/kernel/acpi.c                      |  2 +-
 arch/arm64/mm/hugetlbpage.c                   | 10 ---
 arch/arm64/mm/ioremap.c                       | 85 +++----------------
 include/asm-generic/io.h                      | 16 +++-
 mm/ioremap.c                                  | 27 ++++--
 9 files changed, 74 insertions(+), 100 deletions(-)

Comments

Kefeng Wang May 10, 2022, 7:06 a.m. UTC | #1
Hello maintainers´╝îkindly ping.

On 2022/4/29 18:32, Kefeng Wang wrote:
> 1. Enhance generic ioremap to make it more useful.
> 2. Let's arm64 use GENERIC_IOREMAP to cleanup code.
> 3. Support HAVE_IOREMAP_PROT on arm64, which enable generic_access_phys(),
>     it is useful when debug(eg, gdb) via access_process_vm device memory
>     infrastructure.
>
> v2:
> - s/addr/phys_addr in ioremap_prot, suggested by Andrew Morton
> - rename arch_ioremap/iounmap_check to arch_ioremap/iounmad
>    and change return value, per Christoph Hellwig and Andrew Morton
> - and use 'ifndef arch_ioremap' instead of weak function, per Arnd Bergmann
> - collect ack/review
>
> Kefeng Wang (5):
>    mm: ioremap: Use more sensibly name in ioremap_prot()
>    mm: ioremap: Setup phys_addr of struct vm_struct
>    mm: ioremap: Add arch_ioremap/iounmap()
>    arm64: mm: Convert to GENERIC_IOREMAP
>    arm64: Add HAVE_IOREMAP_PROT support
>
>   .../features/vm/ioremap_prot/arch-support.txt |  2 +-
>   arch/arm64/Kconfig                            |  2 +
>   arch/arm64/include/asm/io.h                   | 20 +++--
>   arch/arm64/include/asm/pgtable.h              | 10 +++
>   arch/arm64/kernel/acpi.c                      |  2 +-
>   arch/arm64/mm/hugetlbpage.c                   | 10 ---
>   arch/arm64/mm/ioremap.c                       | 85 +++----------------
>   include/asm-generic/io.h                      | 16 +++-
>   mm/ioremap.c                                  | 27 ++++--
>   9 files changed, 74 insertions(+), 100 deletions(-)
>
Catalin Marinas May 16, 2022, 10:51 p.m. UTC | #2
On Fri, Apr 29, 2022 at 06:32:20PM +0800, Kefeng Wang wrote:
> Kefeng Wang (5):
>   mm: ioremap: Use more sensibly name in ioremap_prot()
>   mm: ioremap: Setup phys_addr of struct vm_struct
>   mm: ioremap: Add arch_ioremap/iounmap()
>   arm64: mm: Convert to GENERIC_IOREMAP
>   arm64: Add HAVE_IOREMAP_PROT support
> 
>  .../features/vm/ioremap_prot/arch-support.txt |  2 +-
>  arch/arm64/Kconfig                            |  2 +
>  arch/arm64/include/asm/io.h                   | 20 +++--
>  arch/arm64/include/asm/pgtable.h              | 10 +++
>  arch/arm64/kernel/acpi.c                      |  2 +-
>  arch/arm64/mm/hugetlbpage.c                   | 10 ---
>  arch/arm64/mm/ioremap.c                       | 85 +++----------------
>  include/asm-generic/io.h                      | 16 +++-
>  mm/ioremap.c                                  | 27 ++++--
>  9 files changed, 74 insertions(+), 100 deletions(-)

These patches touch the generic mm parts. Andrew, would you like to
merge these patches or are happy for them to go via the arm64 tree.

Thanks.
Kefeng Wang May 19, 2022, 3:37 a.m. UTC | #3
On 2022/5/17 6:51, Catalin Marinas wrote:
> On Fri, Apr 29, 2022 at 06:32:20PM +0800, Kefeng Wang wrote:
>> Kefeng Wang (5):
>>    mm: ioremap: Use more sensibly name in ioremap_prot()
>>    mm: ioremap: Setup phys_addr of struct vm_struct
>>    mm: ioremap: Add arch_ioremap/iounmap()
>>    arm64: mm: Convert to GENERIC_IOREMAP
>>    arm64: Add HAVE_IOREMAP_PROT support
>>
>>   .../features/vm/ioremap_prot/arch-support.txt |  2 +-
>>   arch/arm64/Kconfig                            |  2 +
>>   arch/arm64/include/asm/io.h                   | 20 +++--
>>   arch/arm64/include/asm/pgtable.h              | 10 +++
>>   arch/arm64/kernel/acpi.c                      |  2 +-
>>   arch/arm64/mm/hugetlbpage.c                   | 10 ---
>>   arch/arm64/mm/ioremap.c                       | 85 +++----------------
>>   include/asm-generic/io.h                      | 16 +++-
>>   mm/ioremap.c                                  | 27 ++++--
>>   9 files changed, 74 insertions(+), 100 deletions(-)
> These patches touch the generic mm parts. Andrew, would you like to
> merge these patches or are happy for them to go via the arm64 tree.
Hi Andrew, what's your preference ;)
> Thanks.
>