All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/10] Add generic support for kdump DT properties
@ 2021-07-14 12:50 ` Geert Uytterhoeven
  0 siblings, 0 replies; 89+ messages in thread
From: Geert Uytterhoeven @ 2021-07-14 12:50 UTC (permalink / raw)
  To: Rob Herring, Russell King, Nicolas Pitre, Ard Biesheuvel,
	Linus Walleij, Catalin Marinas, Will Deacon, Nick Kossifidis,
	Paul Walmsley, Palmer Dabbelt, Albert Ou, Frank Rowand,
	Dave Young, Mike Rapoport
  Cc: Baoquan He, Vivek Goyal, Andrew Morton, devicetree,
	linux-arm-kernel, linux-riscv, kexec, linux-mm,
	linux-renesas-soc, linux-kernel, Geert Uytterhoeven

	Hi all,

This patch series adds generic support for parsing DT properties related
to crash dump kernels ("linux,elfcorehdr" and "linux,elfcorehdr" under
the "/chosen" node), makes use of it on arm64, arm32, and (partially)
riscv, and performs a few cleanups.  It is an evolution of the
combination of [1] and [2].

The series consists of 5 parts:
  1. Patches 1-2 prepare (the visibility of) variables used to hold
     information retrieved from the DT properties.
  2. Patches 3-5 add support to the FDT core for parsing the properties.
     This can co-exist safely with architecture-specific parsing, until
     the latter has been removed.
  3. Patch 6 removes the non-standard handling of "linux,elfcorehdr" on
     riscv.
     I think this can be applied independently, as the non-standard
     handling is in v5.13, but upstream riscv kdump support is still
     incomplete.
  4. Patches 7-9 convert arm64 to use the generic handling instead of
     its own implementation.
  5. Patch 10 adds support for kdump properties to arm32.
     The corresponding patch for kexec-tools is "[PATCH] arm: kdump: Add
     DT properties to crash dump kernel's DTB"[3], which is still valid.

Changes compared to the previous versions:
  - Make elfcorehdr_{addr,size} always visible,
  - Add variables for usable memory limitation,
  - Use IS_ENABLED() instead of #ifdef (incl. initrd and arm64),
  - Clarify what architecture-specific code is still responsible for,
  - Add generic support for parsing linux,usable-memory-range,
  - Remove custom linux,usable-memory-range parsing on arm64,
  - Use generic handling on ARM.
  
This has been tested on arm32 and arm64, and compile-tested on riscv64.

Thanks for your comments!

[1] "[PATCH v3] ARM: Parse kdump DT properties"
    https://lore.kernel.org/r/20210317113130.2554368-1-geert+renesas@glider.be/
[2] "[PATCH 0/3] Add generic-support for linux,elfcorehdr and fix riscv"
    https://lore.kernel.org/r/cover.1623780059.git.geert+renesas@glider.be/
[3] "[PATCH] arm: kdump: Add DT properties to crash dump kernel's DTB"
    https://lore.kernel.org/linux-arm-kernel/20200902154129.6358-1-geert+renesas@glider.be/


Geert Uytterhoeven (10):
  crash_dump: Make elfcorehdr_{addr,size} always visible
  memblock: Add variables for usable memory limitation
  of: fdt: Add generic support for parsing elf core headers property
  of: fdt: Add generic support for parsing usable memory range property
  of: fdt: Use IS_ENABLED(CONFIG_BLK_DEV_INITRD) instead of #ifdef
  riscv: Remove non-standard linux,elfcorehdr handling
  arm64: kdump: Remove custom linux,elfcorehdr parsing
  arm64: kdump: Remove custom linux,usable-memory-range parsing
  arm64: kdump: Use IS_ENABLED(CONFIG_CRASH_DUMP) instead of #ifdef
  ARM: Parse kdump DT properties

 Documentation/devicetree/bindings/chosen.txt  | 12 ++--
 .../arm/boot/compressed/fdt_check_mem_start.c | 48 ++++++++++++--
 arch/arm/mm/init.c                            | 30 +++++++++
 arch/arm64/mm/init.c                          | 63 +------------------
 arch/riscv/mm/init.c                          | 20 ------
 drivers/of/fdt.c                              | 63 ++++++++++++++++---
 include/linux/crash_dump.h                    |  7 ++-
 include/linux/memblock.h                      |  6 ++
 mm/memblock.c                                 |  2 +
 9 files changed, 148 insertions(+), 103 deletions(-)

-- 
2.25.1

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds

^ permalink raw reply	[flat|nested] 89+ messages in thread

end of thread, other threads:[~2021-08-11  8:14 UTC | newest]

Thread overview: 89+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-14 12:50 [PATCH v4 00/10] Add generic support for kdump DT properties Geert Uytterhoeven
2021-07-14 12:50 ` Geert Uytterhoeven
2021-07-14 12:50 ` Geert Uytterhoeven
2021-07-14 12:50 ` Geert Uytterhoeven
2021-07-14 12:50 ` [PATCH v4 01/10] crash_dump: Make elfcorehdr_{addr,size} always visible Geert Uytterhoeven
2021-07-14 12:50   ` [PATCH v4 01/10] crash_dump: Make elfcorehdr_{addr, size} " Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 13:46   ` [PATCH v4 01/10] crash_dump: Make elfcorehdr_{addr,size} " Rob Herring
2021-07-14 13:46     ` Rob Herring
2021-07-14 13:46     ` Rob Herring
2021-07-14 13:46     ` Rob Herring
2021-07-14 12:50 ` [PATCH v4 02/10] memblock: Add variables for usable memory limitation Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 13:51   ` Rob Herring
2021-07-14 13:51     ` Rob Herring
2021-07-14 13:51     ` Rob Herring
2021-07-14 13:51     ` Rob Herring
2021-07-18  9:31     ` Mike Rapoport
2021-07-18  9:31       ` Mike Rapoport
2021-07-18  9:31       ` Mike Rapoport
2021-07-18  9:31       ` Mike Rapoport
2021-07-19  6:59       ` Geert Uytterhoeven
2021-07-19  6:59         ` Geert Uytterhoeven
2021-07-19  6:59         ` Geert Uytterhoeven
2021-07-19  6:59         ` Geert Uytterhoeven
2021-07-19  6:59         ` Geert Uytterhoeven
2021-07-20  5:41         ` Mike Rapoport
2021-07-20  5:41           ` Mike Rapoport
2021-07-20  5:41           ` Mike Rapoport
2021-07-20  5:41           ` Mike Rapoport
2021-07-20  5:41           ` Mike Rapoport
2021-07-20  7:23           ` Geert Uytterhoeven
2021-07-20  7:23             ` Geert Uytterhoeven
2021-07-20  7:23             ` Geert Uytterhoeven
2021-07-20  7:23             ` Geert Uytterhoeven
2021-07-20  7:23             ` Geert Uytterhoeven
2021-08-11  8:11     ` Geert Uytterhoeven
2021-08-11  8:11       ` Geert Uytterhoeven
2021-08-11  8:11       ` Geert Uytterhoeven
2021-08-11  8:11       ` Geert Uytterhoeven
2021-08-11  8:11       ` Geert Uytterhoeven
2021-07-14 12:50 ` [PATCH v4 03/10] of: fdt: Add generic support for parsing elf core headers property Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50 ` [PATCH v4 04/10] of: fdt: Add generic support for parsing usable memory range property Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50 ` [PATCH v4 05/10] of: fdt: Use IS_ENABLED(CONFIG_BLK_DEV_INITRD) instead of #ifdef Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50 ` [PATCH v4 06/10] riscv: Remove non-standard linux,elfcorehdr handling Geert Uytterhoeven
2021-07-14 12:50   ` [PATCH v4 06/10] riscv: Remove non-standard linux, elfcorehdr handling Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-20 15:43   ` [PATCH v4 06/10] riscv: Remove non-standard linux,elfcorehdr handling Palmer Dabbelt
2021-07-20 15:43     ` [PATCH v4 06/10] riscv: Remove non-standard linux, elfcorehdr handling Palmer Dabbelt
2021-07-20 15:43     ` Palmer Dabbelt
2021-07-20 15:43     ` Palmer Dabbelt
2021-07-23 15:17     ` [PATCH v4 06/10] riscv: Remove non-standard linux,elfcorehdr handling Geert Uytterhoeven
2021-07-23 15:17       ` [PATCH v4 06/10] riscv: Remove non-standard linux, elfcorehdr handling Geert Uytterhoeven
2021-07-23 15:17       ` Geert Uytterhoeven
2021-07-23 15:17       ` [PATCH v4 06/10] riscv: Remove non-standard linux,elfcorehdr handling Geert Uytterhoeven
2021-07-23 15:17       ` [PATCH v4 06/10] riscv: Remove non-standard linux, elfcorehdr handling Geert Uytterhoeven
2021-07-14 12:50 ` [PATCH v4 07/10] arm64: kdump: Remove custom linux,elfcorehdr parsing Geert Uytterhoeven
2021-07-14 12:50   ` [PATCH v4 07/10] arm64: kdump: Remove custom linux, elfcorehdr parsing Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50 ` [PATCH v4 08/10] arm64: kdump: Remove custom linux,usable-memory-range parsing Geert Uytterhoeven
2021-07-14 12:50   ` [PATCH v4 08/10] arm64: kdump: Remove custom linux, usable-memory-range parsing Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50 ` [PATCH v4 09/10] arm64: kdump: Use IS_ENABLED(CONFIG_CRASH_DUMP) instead of #ifdef Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50 ` [PATCH v4 10/10] ARM: Parse kdump DT properties Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 12:50   ` Geert Uytterhoeven
2021-07-14 14:53   ` Rob Herring
2021-07-14 14:53     ` Rob Herring
2021-07-14 14:53     ` Rob Herring
2021-07-14 14:53     ` Rob Herring

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.