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

From: Kweh, Hock Leong
Date: Thu Apr 30 2015 - 05:31:08 EST


> -----Original Message-----
> From: James Bottomley [mailto:James.Bottomley@xxxxxxxxxxxxxxxxxxxxx]
> Sent: Thursday, April 30, 2015 7:08 AM
> To: linux-efi@xxxxxxxxxxxxxxx
> Cc: Kweh, Hock Leong; LKML; Andy Lutomirski; Greg Kroah-Hartman; Peter
> Jones
> Subject: [RFC 0/3] Add capsule update using error on close semantics
>
> 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

Hi James,

I like the sysfs enhancement but require Greg to buy in the idea.
For the efi capsule part, Matt has implemented some APIs where
you could get the patch at http://permalink.gmane.org/gmane.linux.kernel.efi/4837.
So, I would think that leveraging the APIs that Matt has created
is a better choice.


Thanks & Regards,
Wilson