mbox series

[v2,0/3] arm64: kdump: Function supplement and performance optimization

Message ID 20220621124249.1315-1-thunder.leizhen@huawei.com (mailing list archive)
Headers show
Series arm64: kdump: Function supplement and performance optimization | expand

Message

Leizhen (ThunderTown) June 21, 2022, 12:42 p.m. UTC
v1 --> v2:
1. Update the commit message of Patch 1, explicitly indicates that "crashkernel=X,high"
   is specified but "crashkernel=Y,low" is not specified.
2. Drop Patch 4-5. Currently, focus on function integrity, performance optimization
   will be considered in later versions.
3. Patch 3 is not mandatory, it's just a cleanup now, although it is a must for patch 4-5.
   But to avoid subsequent duplication of effort, I'm glad it was accepted.


v1:
After the basic functions of "support reserving crashkernel above 4G on arm64
kdump"(see https://lkml.org/lkml/2022/5/6/428) are implemented, we still have
three features to be improved.
1. When crashkernel=X,high is specified but crashkernel=Y,low is not specified,
   the default crash low memory size is provided.
2. For crashkernel=X without '@offset', if the low memory fails to be allocated,
   fall back to reserve region from high memory(above DMA zones).
3. If crashkernel=X,high is used, page mapping is performed only for the crash
   high memory, and block mapping is still used for other linear address spaces.
   Compared to the previous version:
   (1) For crashkernel=X[@offset], the memory above 4G is not changed to block
       mapping, leave it to the next time.
   (2) The implementation method is modified. Now the implementation is simpler
       and clearer.

Zhen Lei (3):
  arm64: kdump: Provide default size when crashkernel=Y,low is not
    specified
  arm64: kdump: Support crashkernel=X fall back to reserve region above
    DMA zones
  arm64: kdump: Remove some redundant checks in map_mem()

 .../admin-guide/kernel-parameters.txt         | 10 ++-----
 arch/arm64/mm/init.c                          | 28 +++++++++++++++++--
 arch/arm64/mm/mmu.c                           | 25 ++++++++---------
 3 files changed, 39 insertions(+), 24 deletions(-)

Comments

Leizhen (ThunderTown) June 28, 2022, 1:58 a.m. UTC | #1
On 2022/6/21 20:42, Zhen Lei wrote:
> v1 --> v2:
> 1. Update the commit message of Patch 1, explicitly indicates that "crashkernel=X,high"
>    is specified but "crashkernel=Y,low" is not specified.
> 2. Drop Patch 4-5. Currently, focus on function integrity, performance optimization
>    will be considered in later versions.
> 3. Patch 3 is not mandatory, it's just a cleanup now, although it is a must for patch 4-5.
>    But to avoid subsequent duplication of effort, I'm glad it was accepted.

Hi Catalin:
  Do you have time to review Patch 1-2? Please ignore Patch 3, because now someone has
proposed the following new approach:

https://lore.kernel.org/linux-mm/1656241815-28494-1-git-send-email-guanghuifeng@linux.alibaba.com/T/

> 
> 
> v1:
> After the basic functions of "support reserving crashkernel above 4G on arm64
> kdump"(see https://lkml.org/lkml/2022/5/6/428) are implemented, we still have
> three features to be improved.
> 1. When crashkernel=X,high is specified but crashkernel=Y,low is not specified,
>    the default crash low memory size is provided.
> 2. For crashkernel=X without '@offset', if the low memory fails to be allocated,
>    fall back to reserve region from high memory(above DMA zones).
> 3. If crashkernel=X,high is used, page mapping is performed only for the crash
>    high memory, and block mapping is still used for other linear address spaces.
>    Compared to the previous version:
>    (1) For crashkernel=X[@offset], the memory above 4G is not changed to block
>        mapping, leave it to the next time.
>    (2) The implementation method is modified. Now the implementation is simpler
>        and clearer.
> 
> Zhen Lei (3):
>   arm64: kdump: Provide default size when crashkernel=Y,low is not
>     specified
>   arm64: kdump: Support crashkernel=X fall back to reserve region above
>     DMA zones
>   arm64: kdump: Remove some redundant checks in map_mem()
> 
>  .../admin-guide/kernel-parameters.txt         | 10 ++-----
>  arch/arm64/mm/init.c                          | 28 +++++++++++++++++--
>  arch/arm64/mm/mmu.c                           | 25 ++++++++---------
>  3 files changed, 39 insertions(+), 24 deletions(-)
>