mbox series

[Xen-devel,MM-PART2,RESEND,v2,00/19] xen/arm: Clean-up & fixes in boot/mm code

Message ID 20190514122456.28559-1-julien.grall@arm.com
Headers show
Series xen/arm: Clean-up & fixes in boot/mm code | expand

Message

Julien Grall May 14, 2019, 12:24 p.m. UTC
Hi all,

This is the second part of the boot/memory rework for Xen on Arm. This
part contains mostly clean-up & fixes found during the rework.

The first part of the rework is "xen/arm: TLB flush helpers rework" [1].

For convenience, I provided a branch with all the patches applied based
on staging:

    git://xenbits.xen.org/people/julieng/xen-unstable.git branch mm/part2/v2

Cheers,

[1] https://lists.xenproject.org/archives/html/xen-devel/2019-05/msg01109.html

Julien Grall (19):
  xen/const: Extend the existing macro BIT to take a suffix in parameter
  xen/arm: Rename SCTLR_* defines and remove unused one
  xen/arm: processor: Use BIT(.., UL) instead of _AC(1, U) in SCTLR_
    defines
  xen/arm: Rework HSCTLR_BASE
  xen/arm: Remove parameter cpuid from start_xen
  xen/arm: Rework secondary_start prototype
  xen/arm64: head: Remove unnecessary comment
  xen/arm64: head: Move earlyprintk messages in .rodata.str
  xen/arm64: head: Correctly report the HW CPU ID
  xen/arm32: head: Correctly report the HW CPU ID
  xen/arm32: head: Don't set MAIR0 and MAIR1
  xen/arm32: head: Always zero r3 before update a page-table entry
  xen/arm32: mm: Avoid to zero and clean cache for CPU0 domheap
  xen/arm32: mm: Avoid cleaning the cache for secondary CPUs page-tables
  xen/arm: mm: Introduce DEFINE_PAGE_TABLE{,S} and use it
  xen/arm: mm: Protect Xen page-table update with a spinlock
  xen/arm: mm: Initialize page-tables earlier
  xen/arm: mm: Check start is always before end in {destroy,
    modify}_xen_mappings
  xen/arm: Pair call to set_fixmap with call to clear_fixmap in
    copy_from_paddr

 xen/arch/arm/arm32/head.S         | 34 ++++----------
 xen/arch/arm/arm32/insn.c         |  2 +-
 xen/arch/arm/arm64/head.S         | 40 +++++------------
 xen/arch/arm/arm64/insn.c         | 18 ++++----
 xen/arch/arm/gic-v3-its.c         | 13 +++---
 xen/arch/arm/gic-v3-lpi.c         |  4 +-
 xen/arch/arm/guest_walk.c         | 10 ++---
 xen/arch/arm/kernel.c             |  3 +-
 xen/arch/arm/mm.c                 | 62 +++++++++++++-------------
 xen/arch/arm/setup.c              |  7 ++-
 xen/arch/arm/smpboot.c            |  4 +-
 xen/arch/arm/traps.c              |  6 +--
 xen/arch/arm/vgic-v3-its.c        | 12 ++---
 xen/arch/arm/vgic-v3.c            |  2 +-
 xen/arch/arm/vgic.c               |  2 +-
 xen/drivers/char/meson-uart.c     | 16 +++----
 xen/drivers/char/mvebu-uart.c     | 34 +++++++-------
 xen/include/asm-arm/asm_defns.h   |  5 +++
 xen/include/asm-arm/bitops.h      |  2 -
 xen/include/asm-arm/gic_v3_defs.h |  4 +-
 xen/include/asm-arm/gic_v3_its.h  | 10 ++---
 xen/include/asm-arm/p2m.h         |  4 +-
 xen/include/asm-arm/processor.h   | 93 ++++++++++++++++++++++++++++++---------
 xen/include/xen/const.h           |  2 +
 24 files changed, 201 insertions(+), 188 deletions(-)

Comments

Julien Grall May 29, 2019, 5:23 p.m. UTC | #1
Hi,

I am missing some reply/review from Stefano (see below).

On 14/05/2019 13:24, Julien Grall wrote:
> Julien Grall (19):
>    xen/arm: Rework HSCTLR_BASE

More details input on his claim... and review for the following patches:

>    xen/arm: Remove parameter cpuid from start_xen
>    xen/arm32: head: Correctly report the HW CPU ID
>    xen/arm32: head: Don't set MAIR0 and MAIR1
>    xen/arm32: head: Always zero r3 before update a page-table entry
>    xen/arm32: mm: Avoid to zero and clean cache for CPU0 domheap
>    xen/arm32: mm: Avoid cleaning the cache for secondary CPUs page-tables
>    xen/arm: mm: Introduce DEFINE_PAGE_TABLE{,S} and use it
>    xen/arm: mm: Protect Xen page-table update with a spinlock
>    xen/arm: mm: Initialize page-tables earlier
>    xen/arm: mm: Check start is always before end in {destroy,
>      modify}_xen_mappings
>    xen/arm: Pair call to set_fixmap with call to clear_fixmap in
>      copy_from_paddr

Cheers,
Julien Grall June 13, 2019, 12:09 p.m. UTC | #2
Hi,

On 14/05/2019 13:24, Julien Grall wrote:
> This is the second part of the boot/memory rework for Xen on Arm. This
> part contains mostly clean-up & fixes found during the rework.
> 
> The first part of the rework is "xen/arm: TLB flush helpers rework" [1].
> 
> For convenience, I provided a branch with all the patches applied based
> on staging:
> 
>      git://xenbits.xen.org/people/julieng/xen-unstable.git branch mm/part2/v2
> 
> Cheers,
> 
> [1] https://lists.xenproject.org/archives/html/xen-devel/2019-05/msg01109.html
> 
> Julien Grall (19):
>    xen/arm: Rework HSCTLR_BASE

I have committed all but this patch as it needs a respin. I will send it as part 
of MM-PART3.

Thank you for the review.

Cheers,