[PATCH v9 0/8] xen/arm: Split MMU code as the prepration of MPU work

Henry Wang posted 8 patches 5 months, 1 week ago
Only 7 patches received!
xen/arch/arm/Kconfig               |    2 +-
xen/arch/arm/Makefile              |    1 +
xen/arch/arm/arm32/Makefile        |    1 +
xen/arch/arm/arm32/head.S          |   22 +-
xen/arch/arm/arm32/mmu/Makefile    |    1 +
xen/arch/arm/arm32/mmu/mm.c        |  301 +++++
xen/arch/arm/arm64/Makefile        |    1 -
xen/arch/arm/arm64/mmu/Makefile    |    1 +
xen/arch/arm/arm64/mmu/head.S      |   19 +-
xen/arch/arm/arm64/{ => mmu}/mm.c  |   84 ++
xen/arch/arm/domain.c              |   11 +-
xen/arch/arm/include/asm/mm.h      |   32 +-
xen/arch/arm/include/asm/mmu/mm.h  |   44 +
xen/arch/arm/include/asm/mmu/p2m.h |   26 +
xen/arch/arm/include/asm/p2m.h     |   32 +-
xen/arch/arm/include/asm/page.h    |   15 -
xen/arch/arm/include/asm/setup.h   |    5 +
xen/arch/arm/kernel.c              |   28 -
xen/arch/arm/mm.c                  | 1212 ------------------
xen/arch/arm/mmu/Makefile          |    4 +
xen/arch/arm/mmu/p2m.c             | 1834 ++++++++++++++++++++++++++
xen/arch/arm/mmu/pt.c              |  736 +++++++++++
xen/arch/arm/mmu/setup.c           |  376 ++++++
xen/arch/arm/mmu/smpboot.c         |  124 ++
xen/arch/arm/p2m.c                 | 1909 +---------------------------
xen/arch/arm/setup.c               |  324 +----
xen/arch/arm/smpboot.c             |    4 +-
27 files changed, 3656 insertions(+), 3493 deletions(-)
create mode 100644 xen/arch/arm/arm32/mmu/Makefile
create mode 100644 xen/arch/arm/arm32/mmu/mm.c
rename xen/arch/arm/arm64/{ => mmu}/mm.c (61%)
create mode 100644 xen/arch/arm/include/asm/mmu/mm.h
create mode 100644 xen/arch/arm/include/asm/mmu/p2m.h
create mode 100644 xen/arch/arm/mmu/Makefile
create mode 100644 xen/arch/arm/mmu/p2m.c
create mode 100644 xen/arch/arm/mmu/pt.c
create mode 100644 xen/arch/arm/mmu/setup.c
create mode 100644 xen/arch/arm/mmu/smpboot.c
[PATCH v9 0/8] xen/arm: Split MMU code as the prepration of MPU work
Posted by Henry Wang 5 months, 1 week ago
Based on the discussion in the Xen Summit [1], sending this series out after
addressing the comments in v8 [2] as the preparation work to add MPU support.

Mostly code movement and function folding, with some of Kconfig and build
system (mainly Makefiles) adjustment.

This series is based on:
6cd046c501 xen/arm: Enlarge identity map space to 10TB

[1] https://lore.kernel.org/xen-devel/AS8PR08MB799122F8B0CB841DED64F4819226A@AS8PR08MB7991.eurprd08.prod.outlook.com/
[2] https://lore.kernel.org/xen-devel/20231023021345.1731436-1-Henry.Wang@arm.com/

Henry Wang (6):
  xen/arm: Split page table related code to mmu/pt.c
  xen/arm: Split MMU system SMP MM bringup code to mmu/smpboot.c
  xen/arm: Fold mmu_init_secondary_cpu() to head.S
  xen/arm: Extract MMU-specific MM code
  xen/arm: Split MMU-specific setup_mm() and related code out
  xen/arm: Fold pmap and fixmap into MMU system

Penny Zheng (2):
  xen/arm: Rename init_secondary_pagetables() to prepare_secondary_mm()
  xen/arm: mmu: move MMU specific P2M code to mmu/p2m.{c,h}

 xen/arch/arm/Kconfig               |    2 +-
 xen/arch/arm/Makefile              |    1 +
 xen/arch/arm/arm32/Makefile        |    1 +
 xen/arch/arm/arm32/head.S          |   22 +-
 xen/arch/arm/arm32/mmu/Makefile    |    1 +
 xen/arch/arm/arm32/mmu/mm.c        |  301 +++++
 xen/arch/arm/arm64/Makefile        |    1 -
 xen/arch/arm/arm64/mmu/Makefile    |    1 +
 xen/arch/arm/arm64/mmu/head.S      |   19 +-
 xen/arch/arm/arm64/{ => mmu}/mm.c  |   84 ++
 xen/arch/arm/domain.c              |   11 +-
 xen/arch/arm/include/asm/mm.h      |   32 +-
 xen/arch/arm/include/asm/mmu/mm.h  |   44 +
 xen/arch/arm/include/asm/mmu/p2m.h |   26 +
 xen/arch/arm/include/asm/p2m.h     |   32 +-
 xen/arch/arm/include/asm/page.h    |   15 -
 xen/arch/arm/include/asm/setup.h   |    5 +
 xen/arch/arm/kernel.c              |   28 -
 xen/arch/arm/mm.c                  | 1212 ------------------
 xen/arch/arm/mmu/Makefile          |    4 +
 xen/arch/arm/mmu/p2m.c             | 1834 ++++++++++++++++++++++++++
 xen/arch/arm/mmu/pt.c              |  736 +++++++++++
 xen/arch/arm/mmu/setup.c           |  376 ++++++
 xen/arch/arm/mmu/smpboot.c         |  124 ++
 xen/arch/arm/p2m.c                 | 1909 +---------------------------
 xen/arch/arm/setup.c               |  324 +----
 xen/arch/arm/smpboot.c             |    4 +-
 27 files changed, 3656 insertions(+), 3493 deletions(-)
 create mode 100644 xen/arch/arm/arm32/mmu/Makefile
 create mode 100644 xen/arch/arm/arm32/mmu/mm.c
 rename xen/arch/arm/arm64/{ => mmu}/mm.c (61%)
 create mode 100644 xen/arch/arm/include/asm/mmu/mm.h
 create mode 100644 xen/arch/arm/include/asm/mmu/p2m.h
 create mode 100644 xen/arch/arm/mmu/Makefile
 create mode 100644 xen/arch/arm/mmu/p2m.c
 create mode 100644 xen/arch/arm/mmu/pt.c
 create mode 100644 xen/arch/arm/mmu/setup.c
 create mode 100644 xen/arch/arm/mmu/smpboot.c

-- 
2.25.1
Re: [PATCH v9 0/8] xen/arm: Split MMU code as the prepration of MPU work
Posted by Julien Grall 5 months, 1 week ago
Hi Henry,

On 16/11/2023 14:50, Henry Wang wrote:
> Based on the discussion in the Xen Summit [1], sending this series out after
> addressing the comments in v8 [2] as the preparation work to add MPU support.
> 
> Mostly code movement and function folding, with some of Kconfig and build
> system (mainly Makefiles) adjustment.
> 
> This series is based on:
> 6cd046c501 xen/arm: Enlarge identity map space to 10TB
> 
> [1] https://lore.kernel.org/xen-devel/AS8PR08MB799122F8B0CB841DED64F4819226A@AS8PR08MB7991.eurprd08.prod.outlook.com/
> [2] https://lore.kernel.org/xen-devel/20231023021345.1731436-1-Henry.Wang@arm.com/
> 
> Henry Wang (6):
>    xen/arm: Split page table related code to mmu/pt.c
>    xen/arm: Split MMU system SMP MM bringup code to mmu/smpboot.c
>    xen/arm: Fold mmu_init_secondary_cpu() to head.S
>    xen/arm: Extract MMU-specific MM code
>    xen/arm: Split MMU-specific setup_mm() and related code out
>    xen/arm: Fold pmap and fixmap into MMU system
> 
> Penny Zheng (2):
>    xen/arm: Rename init_secondary_pagetables() to prepare_secondary_mm()
>    xen/arm: mmu: move MMU specific P2M code to mmu/p2m.{c,h}

I have committed the series. Thanks for the series. Looking forward to 
review the rest of the MPU support!

Cheers,

-- 
Julien Grall
Re: [PATCH v9 0/8] xen/arm: Split MMU code as the prepration of MPU work
Posted by Henry Wang 5 months, 1 week ago
Hi Julien,

> On Nov 21, 2023, at 03:09, Julien Grall <julien@xen.org> wrote:
> 
> Hi Henry,
> 
> On 16/11/2023 14:50, Henry Wang wrote:
>> Based on the discussion in the Xen Summit [1], sending this series out after
>> addressing the comments in v8 [2] as the preparation work to add MPU support.
>> Mostly code movement and function folding, with some of Kconfig and build
>> system (mainly Makefiles) adjustment.
>> This series is based on:
>> 6cd046c501 xen/arm: Enlarge identity map space to 10TB
>> [1] https://lore.kernel.org/xen-devel/AS8PR08MB799122F8B0CB841DED64F4819226A@AS8PR08MB7991.eurprd08.prod.outlook.com/
>> [2] https://lore.kernel.org/xen-devel/20231023021345.1731436-1-Henry.Wang@arm.com/
>> Henry Wang (6):
>>   xen/arm: Split page table related code to mmu/pt.c
>>   xen/arm: Split MMU system SMP MM bringup code to mmu/smpboot.c
>>   xen/arm: Fold mmu_init_secondary_cpu() to head.S
>>   xen/arm: Extract MMU-specific MM code
>>   xen/arm: Split MMU-specific setup_mm() and related code out
>>   xen/arm: Fold pmap and fixmap into MMU system
>> Penny Zheng (2):
>>   xen/arm: Rename init_secondary_pagetables() to prepare_secondary_mm()
>>   xen/arm: mmu: move MMU specific P2M code to mmu/p2m.{c,h}
> 
> I have committed the series. Thanks for the series. Looking forward to review the rest of the MPU support!

Thanks for committing the series. We will rebase the MPU series on top of latest staging, address the
remaining comments from you and send the updated series soon.

Kind regards,
Henry

> 
> Cheers,
> 
> -- 
> Julien Grall