Re: [PATCH 1/2] efi: Determine how much space is used by boot services-onlyvariables

From: Matt Fleming
Date: Wed Apr 03 2013 - 09:09:12 EST


On 01/04/13 16:13, Matthew Garrett wrote:
> EFI variables can be flagged as being accessible only within boot services.
> This makes it awkward for us to figure out how much space they use at
> runtime. In theory we could figure this out by simply comparing the results
> from QueryVariableInfo() to the space used by all of our variables, but
> that fails if the platform doesn't garbage collect on every boot. Thankfully,
> calling QueryVariableInfo() while still inside boot services gives a more
> reliable answer. This patch passes that information from the EFI boot stub
> up to the efivars code, letting us calculate a reasonably accurate value.
>
> Signed-off-by: Matthew Garrett <matthew.garrett@xxxxxxxxxx>
> ---
> arch/x86/boot/compressed/eboot.c | 47 +++++++++++++++++++++++++++++++++++
> arch/x86/include/asm/efi.h | 10 ++++++++
> arch/x86/include/uapi/asm/bootparam.h | 1 +
> arch/x86/platform/efi/efi.c | 21 ++++++++++++++++
> drivers/firmware/efivars.c | 29 +++++++++++++++++++++
> 5 files changed, 108 insertions(+)

We're fixing a regression in efivars.c, but only for those users that
boot via the EFI boot stub? That seems likely to upset some people.

Introducing new features via the EFI boot stub is fine, and working
around firmware bugs so that we can use some feature is also cool, but
we can't start fixing regressions from other subsystems in the EFI boot
stub.

--
Matt Fleming, Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/