• Ard Biesheuvel's avatar
    efi/libstub: Get rid of 'sys_table_arg' macro parameter · 2fcdad2a
    Ard Biesheuvel authored
    The efi_call macros on ARM have a dependency on a variable 'sys_table_arg'
    existing in the scope of the macro instantiation. Since this variable
    always points to the same data structure, let's create a global getter
    for it and use that instead.
    
    Note that the use of a global variable with external linkage is avoided,
    given the problems we had in the past with early processing of the GOT
    tables.
    
    While at it, drop the redundant casts in the efi_table_attr and
    efi_call_proto macros.
    Signed-off-by: default avatarArd Biesheuvel <ardb@kernel.org>
    Cc: Arvind Sankar <nivedita@alum.mit.edu>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: James Morse <james.morse@arm.com>
    Cc: Matt Fleming <matt@codeblueprint.co.uk>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: linux-efi@vger.kernel.org
    Link: https://lkml.kernel.org/r/20191224151025.32482-16-ardb@kernel.orgSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
    2fcdad2a
efi.h 2.91 KB