Linux's Pstore Picking Up A Block Device Backend For Storing Oops & Panic Messages
Written by Michael Larabel in Linux Kernel on 1 June 2020 at 06:52 AM EDT. 3 Comments
LINUX KERNEL --
Linux's pstore "persistent storage" code is seeing a number of improvements for the Linux 5.8 kernel.

Pstore is the Linux interface to persistent storage for archiving a limited amount of data across reboots, such as for archiving kernel oops or panic messages so they can be easily analyzed following a reboot from such a fatal problem.

Pstore can easily save the dmesg console output or MCE data among other possibilities but has generally depended upon the system having some amount of persistent RAM or other memory that can withstand reboots. With the upcoming Linux 5.8 cycle there is finally a block back-end being introduced.

The "pstore/blk" back-end allows using a block device as the storage medium instead of persistent RAM. This is intended for embedded use-cases and other devices without any other capabilities for being able to preserve this data across reboots. Of course, depending upon the kernel oops or other issues, the block device may become inaccessible for pstore logging. This patch was originally worked on by Allwinner Tech.

All of the pstore block details are configured via Kconfig options when building the kernel or kernel module options.

The pstore pull for Linux 5.8 also has pstore/zone for common code for contiguous storage, an MTD back-end, and other improvements.
Related News
About The Author
Author picture

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter or contacted via MichaelLarabel.com.

Popular News This Week