• Ard Biesheuvel's avatar
    efi: avoid efivars layer when loading SSDTs from variables · 3881ee0b
    Ard Biesheuvel authored
    The efivars intermediate variable access layer provides an abstraction
    that permits the EFI variable store to be replaced by something else
    that implements a compatible interface, and caches all variables in the
    variable store for fast access via the efivarfs pseudo-filesystem.
    
    The SSDT override feature does not take advantage of either feature, as
    it is only used when the generic EFI implementation of efivars is used,
    and it traverses all variables only once to find the ones it is
    interested in, and frees all data structures that the efivars layer
    keeps right after.
    
    So in this case, let's just call EFI's code directly, using the function
    pointers in struct efi.
    Signed-off-by: default avatarArd Biesheuvel <ardb@kernel.org>
    3881ee0b
efi.c 26.9 KB