Patch-mainline: v3.8-rc1..v3.8-rc3
Target: openSUSE 12.3
Test steps:
+ build; make modules_install; make install
+ mount -t efivarfs none /sys/firmware/efi/efivars/
or create file
/lib/systemd/system/sys-firmware-efi-efivars.mount [1]
+ ls /sys/firmware/efi/efivars will show up all EFI variables
+ Try the small create[2]/delete[3] programs from Gary Lin
The create program will create a EFI variable is TestVar, then we can see it show up
in /sys/firmware/efi/efivars. And, delete program can remove it.
Backported 19 patches:
0001-efi-Add-support-for-a-UEFI-variable-filesystem.patch
0002-efi-Handle-deletions-and-size-changes-in-efivarfs_w.patch
0003-efi-add-efivars-kobject-to-efi-sysfs-folder.patch
0004-efivarfs-Add-documentation-for-the-EFI-variable-fil.patch
0005-efivarfs-efivarfs_file_read-ensure-we-free-data-in.patch
0006-efivarfs-efivarfs_create-ensure-we-drop-our-refer.patch
0007-efivarfs-efivarfs_fill_super-fix-inode-reference.patch
0008-efivarfs-efivarfs_fill_super-ensure-we-free-our-t.patch
0009-efivarfs-efivarfs_fill_super-ensure-we-clean-up-c.patch
0010-efivarfs-Implement-exclusive-access-for-get-set-_v.patch
0011-efivarfs-Return-an-error-if-we-fail-to-read-a-variab.patch
0012-efi-Clarify-GUID-length-calculations.patch
0013-efivarfs-Replace-magic-number-with-sizeof-attributes.patch
0014-efivarfs-Add-unique-magic-number.patch
0015-efivarfs-Make-datasize-unsigned-long.patch
0016-efivarfs-Return-a-consistent-error-when-efivarfs_get.patch
0017-efivarfs-Fix-return-value-of-efivarfs_file_write.patch
0018-efivarfs-Use-query_variable_info-to-limit-kmalloc.patch
0019-efivarfs-Make-efivarfs_fill_super-static.patch
[1]
/lib/systemd/system/sys-firmware-efi-efivars.mount (already sent to systemd mailing list for review)
[Unit]
Description=EFI Variables File System
Documentation=https://www.kernel.org/doc/Documentation/filesystems/efivarfs.txt
DefaultDependencies=no
ConditionPathExists=/sys/firmware/efi/efivars
Before=sysinit.target
[Mount]
What=efivarfs
Where=/sys/firmware/efi/efivars
Type=efivarfs
[2]
create.c
#include