forked from Minki/linux
17639f67c1
pstore/blk is similar to pstore/ram, but uses a block device as the storage rather than persistent ram. The pstore/blk backend solves two common use-cases that used to preclude using pstore/ram: - not all devices have a battery that could be used to persist regular RAM across power failures. - most embedded intelligent equipment have no persistent ram, which increases costs, instead preferring cheaper solutions, like block devices. pstore/blk provides separate configurations for the end user and for the block drivers. User configuration determines how pstore/blk operates, such as record sizes, max kmsg dump reasons, etc. These can be set by Kconfig and/or module parameters, but module parameter have priority over Kconfig. Driver configuration covers all the details about the target block device, such as total size of the device and how to perform read/write operations. These are provided by block drivers, calling pstore_register_blkdev(), including an optional panic_write callback used to bypass regular IO APIs in an effort to avoid potentially destabilized kernel code during a panic. Signed-off-by: WeiXiong Liao <liaoweixiong@allwinnertech.com> Link: https://lore.kernel.org/lkml/20200511233229.27745-3-keescook@chromium.org/ Co-developed-by: Kees Cook <keescook@chromium.org> Signed-off-by: Kees Cook <keescook@chromium.org>
21 lines
445 B
Makefile
21 lines
445 B
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
#
|
|
# Makefile for the linux pstorefs routines.
|
|
#
|
|
|
|
obj-$(CONFIG_PSTORE) += pstore.o
|
|
|
|
pstore-objs += inode.o platform.o
|
|
pstore-$(CONFIG_PSTORE_FTRACE) += ftrace.o
|
|
|
|
pstore-$(CONFIG_PSTORE_PMSG) += pmsg.o
|
|
|
|
ramoops-objs += ram.o ram_core.o
|
|
obj-$(CONFIG_PSTORE_RAM) += ramoops.o
|
|
|
|
pstore_zone-objs += zone.o
|
|
obj-$(CONFIG_PSTORE_ZONE) += pstore_zone.o
|
|
|
|
pstore_blk-objs += blk.o
|
|
obj-$(CONFIG_PSTORE_BLK) += pstore_blk.o
|