This is a series to support crash log to block and mtd device, base on v4 of Kees Cook's. Changes since v4: patch 1: adapt pstore to kmsg_dump_reason_str(). patch 2: fix bugs that decompress failed and rmmod failed. use atomic_xchg() on psz_flush_dirty_zone() in case of reload. patch 3: fix build error patch 5: flush pmsg zone if it's dirty. patch 6: use delayed work to cache more data and reduce calling dirty-flusher times patch 12: change dev_err() to pr_err() when initialize because it get no pointer to mtd at that time. v4: https://lore.kernel.org/lkml/20200508064004.57898-1-keescook@xxxxxxxxxxxx/ v3: https://lore.kernel.org/lkml/1585126506-18635-1-git-send-email-liaoweixiong@xxxxxxxxxxxxxxxxx/ v2: https://lore.kernel.org/lkml/1581078355-19647-1-git-send-email-liaoweixiong@xxxxxxxxxxxxxxxxx/ v1: https://lore.kernel.org/lkml/1579482233-2672-1-git-send-email-liaoweixiong@xxxxxxxxxxxxxxxxx/ Kees Cook (1): printk: pstore: Introduce kmsg_dump_reason_str() WeiXiong Liao (11): pstore/zone: Introduce common layer to manage storage zones pstore/blk: Introduce backend for block devices pstore/blk: Provide way to choose pstore frontend support pstore/blk: Add support for pmsg frontend pstore/blk: Add console frontend support pstore/blk: Add ftrace frontend support Documentation: Add details for pstore/blk pstore/zone: Provide way to skip "broken" zone for MTD devices pstore/blk: Provide way to query pstore configuration pstore/blk: Support non-block storage devices mtd: Support kmsg dumper based on pstore/blk Documentation/admin-guide/pstore-blk.rst | 243 +++++ MAINTAINERS | 1 + drivers/mtd/Kconfig | 10 + drivers/mtd/Makefile | 1 + drivers/mtd/mtdpstore.c | 563 +++++++++++ fs/pstore/Kconfig | 109 +++ fs/pstore/Makefile | 6 + fs/pstore/blk.c | 481 ++++++++++ fs/pstore/platform.c | 22 +- fs/pstore/zone.c | 1508 ++++++++++++++++++++++++++++++ include/linux/kmsg_dump.h | 7 + include/linux/pstore_blk.h | 77 ++ include/linux/pstore_zone.h | 60 ++ kernel/printk/printk.c | 21 + 14 files changed, 3088 insertions(+), 21 deletions(-) create mode 100644 Documentation/admin-guide/pstore-blk.rst create mode 100644 drivers/mtd/mtdpstore.c create mode 100644 fs/pstore/blk.c create mode 100644 fs/pstore/zone.c create mode 100644 include/linux/pstore_blk.h create mode 100644 include/linux/pstore_zone.h -- 1.9.1