[lkml]   [2013]   [Oct]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH 0/5] EFI capsule pstore support
From: Matt Fleming <>

The UEFI spec describes a capsule mechanism that allows data blobs to be
handed to the firmware at runtime. If the firmware doesn't recognise the
guid of the capsule and if certain flags are set in the capsule header,
the firmware will preserve the memory region containing the capsule
across a reboot. We can utilise this feature to perform crash dumps and
function tracing to aid in crash analysis.

The capsule buffers containing pstore data can be much larger than is
possible with the EFI variable pstore backend, which makes it
particularly attractive for function tracing. Futhermore, because the
memory regions containing the capsule data are registered with the
firmware prior to the crash (as opposed to efi-pstore.c which invokes
variable services from the crash handler) it's more useful for debugging
hard hangs.

Matt Fleming (5):
pstore/ftrace: Don't increment initial data offset
efi: Introduce a Runtime Services lock
efi: Add common efi_reboot() implementation
efi: Move efi_status_to_err() to efi.h
efi: Capsule update support and pstore backend

arch/ia64/kernel/efi.c | 33 +-
arch/ia64/kernel/process.c | 2 +-
arch/x86/kernel/reboot.c | 21 +-
arch/x86/platform/efi/efi.c | 108 +++++-
drivers/firmware/efi/Kconfig | 19 +
drivers/firmware/efi/Makefile | 3 +-
drivers/firmware/efi/capsule.c | 802 +++++++++++++++++++++++++++++++++++++++++
drivers/firmware/efi/efi.c | 12 +
drivers/firmware/efi/reboot.c | 37 ++
drivers/firmware/efi/vars.c | 52 +--
fs/pstore/inode.c | 1 -
include/linux/efi.h | 54 +++
12 files changed, 1072 insertions(+), 72 deletions(-)
create mode 100644 drivers/firmware/efi/capsule.c
create mode 100644 drivers/firmware/efi/reboot.c


 \ /
  Last update: 2013-10-16 16:01    [W:0.072 / U:0.396 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site