[RFC 0/3] Add capsule update using error on close semantics

James Bottomley
2015-04-29T23:07:45Z

This is a straw man implementation. The three patches firstly thread
the needed ->flush() file op through sysfs and kernfs. The next one
extracts transaction buffer handling from firmware_class.c and makes it
generic in a lib helper and the third patch adds a bare bones capsule
update (I suspect the latter needs more work, since it doesn't implement
the scatterlist).

James Bottomley (3):
sysfs,kernfs: add flush operation
firmware_class: split out transaction helpers
efi: add capsule update capability via sysfs

drivers/base/firmware_class.c | 117 ++++---------------------------
drivers/firmware/efi/Makefile | 2 +-
drivers/firmware/efi/capsule.c | 78 +++++++++++++++++++++
drivers/firmware/efi/capsule.h | 2 +
drivers/firmware/efi/efi.c | 8 +++
fs/kernfs/file.c | 16 +++++
fs/sysfs/file.c | 16 +++++
include/linux/kernfs.h | 2 +
include/linux/sysfs.h | 2 +
include/linux/transaction_helper.h | 26 +++++++
lib/Makefile | 2 +-
lib/transaction_helper.c | 137 +++++++++++++++++++++++++++++++++++++
12 files changed, 304 insertions(+), 104 deletions(-)
create mode 100644 drivers/firmware/efi/capsule.c
create mode 100644 drivers/firmware/efi/capsule.h
create mode 100644 include/linux/transaction_helper.h
create mode 100644 lib/transaction_helper.c

James