Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ca01d6dd authored by Tony Luck's avatar Tony Luck
Browse files

pstore: new filesystem interface to platform persistent storage



Some platforms have a small amount of non-volatile storage that
can be used to store information useful to diagnose the cause of
a system crash.  This is the generic part of a file system interface
that presents information from the crash as a series of files in
/dev/pstore.  Once the information has been seen, the underlying
storage is freed by deleting the files.

Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
parent 90a8a73c
Loading
Loading
Loading
Loading
+35 −0
Original line number Diff line number Diff line
Where:		/dev/pstore/...
Date:		January 2011
Kernel Version: 2.6.38
Contact:	tony.luck@intel.com
Description:	Generic interface to platform dependent persistent storage.

		Platforms that provide a mechanism to preserve some data
		across system reboots can register with this driver to
		provide a generic interface to show records captured in
		the dying moments.  In the case of a panic the last part
		of the console log is captured, but other interesting
		data can also be saved.

		# mount -t pstore - /dev/pstore

		$ ls -l /dev/pstore
		total 0
		-r--r--r-- 1 root root 7896 Nov 30 15:38 dmesg-erst-1

		Different users of this interface will result in different
		filename prefixes.  Currently two are defined:

		"dmesg"	- saved console log
		"mce"	- architecture dependent data from fatal h/w error

		Once the information in a file has been read, removing
		the file will signal to the underlying persistent storage
		device that it can reclaim the space for later re-use.

		$ rm /dev/pstore/dmesg-erst-1

		The expectation is that all files in /dev/pstore
		will be saved elsewhere and erased from persistent store
		soon after boot to free up space ready for the next
		catastrophe.
+7 −0
Original line number Diff line number Diff line
What:		/sys/fs/pstore/kmsg_bytes
Date:		January 2011
Kernel Version: 2.6.38
Contact:	"Tony Luck" <tony.luck@intel.com>
Description:
		Controls amount of console log that will be saved
		to persistent store on oops/panic.
+1 −0
Original line number Diff line number Diff line
@@ -188,6 +188,7 @@ source "fs/omfs/Kconfig"
source "fs/hpfs/Kconfig"
source "fs/qnx4/Kconfig"
source "fs/romfs/Kconfig"
source "fs/pstore/Kconfig"
source "fs/sysv/Kconfig"
source "fs/ufs/Kconfig"
source "fs/exofs/Kconfig"
+1 −0
Original line number Diff line number Diff line
@@ -121,3 +121,4 @@ obj-$(CONFIG_BTRFS_FS) += btrfs/
obj-$(CONFIG_GFS2_FS)           += gfs2/
obj-$(CONFIG_EXOFS_FS)          += exofs/
obj-$(CONFIG_CEPH_FS)		+= ceph/
obj-$(CONFIG_PSTORE)		+= pstore/

fs/pstore/Kconfig

0 → 100644
+13 −0
Original line number Diff line number Diff line
config PSTORE
	bool "Persistant store support"
	default n
	help
	   This option enables generic access to platform level
	   persistent storage via "pstore" filesystem that can
	   be mounted as /dev/pstore.  Only useful if you have
	   a platform level driver that registers with pstore to
	   provide the data, so you probably should just go say "Y"
	   (or "M") to a platform specific persistent store driver
	   (e.g. ACPI_APEI on X86) which will select this for you.
	   If you don't have a platform persistent store driver,
	   say N.
Loading