mbox series

[v4,0/3] Add command to display or save Linux PStore dumps

Message ID 20200319184024.5023-1-frederic.danis@collabora.com
Headers show
Series Add command to display or save Linux PStore dumps | expand

Message

Frédéric Danis March 19, 2020, 6:40 p.m. UTC
This serie of patches adds a new pstore command allowing to display or save
ramoops logs (oops, panic, console, ftrace and user) generated by a previous
kernel crash.
PStore parameters can be set in U-Boot configuration file, or at run-time
using "pstore set" command. For kernel using Device Tree, the parameters are
dynamically added to Device Tree.
Records size should be the same as the ones used by kernel, and should be a
power of 2.

Since v3:
- Fix PStore memory address in sandbox defconfig files for tests

Since v2:
- Add default value for PStore memory size
- Remove default value of PStore memory address
- Update config entry helps
- Replace calls to debug() by log_debug()
- Update documentation
- Replace 1M test file by 3 * 4K files and build pstore memory during test
- Add fdt_fixup_pstore() to pass PStore/Ramoops parameters to kernel

Since v1:
- Fix 64bit mode build warnings
- Add documentation
- Add function description comments
- Replace calls to pr_debug() by debug()
- Add CONFIG_CMD_PSTORE to sandbox and sandbox64
- Add unit tests

Fr?d?ric Danis (3):
  cmd: Add command to display or save Linux PStore dumps
  test: Add PStore command tests
  cmd: Fixup DT to pass PStore Ramoops parameters

 cmd/Kconfig                                |  71 +++
 cmd/Makefile                               |   1 +
 cmd/pstore.c                               | 543 +++++++++++++++++++++
 common/image-fdt.c                         |   4 +
 configs/sandbox64_defconfig                |   2 +
 configs/sandbox_defconfig                  |   2 +
 doc/index.rst                              |   7 +
 doc/pstore.rst                             |  76 +++
 include/fdt_support.h                      |   3 +
 test/py/tests/test_pstore.py               |  73 +++
 test/py/tests/test_pstore_data_console.hex | Bin 0 -> 4096 bytes
 test/py/tests/test_pstore_data_panic1.hex  | Bin 0 -> 4096 bytes
 test/py/tests/test_pstore_data_panic2.hex  | Bin 0 -> 4096 bytes
 13 files changed, 782 insertions(+)
 create mode 100644 cmd/pstore.c
 create mode 100644 doc/pstore.rst
 create mode 100644 test/py/tests/test_pstore.py
 create mode 100644 test/py/tests/test_pstore_data_console.hex
 create mode 100644 test/py/tests/test_pstore_data_panic1.hex
 create mode 100644 test/py/tests/test_pstore_data_panic2.hex