Re: [GIT PULL] EFI fix

From: Ard Biesheuvel
Date: Fri Jan 11 2019 - 09:22:49 EST


On Fri, 11 Jan 2019 at 08:46, Ingo Molnar <mingo@xxxxxxxxxx> wrote:
>
> Linus,
>
> Please pull the latest efi-urgent-for-linus git tree from:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git efi-urgent-for-linus
>
> # HEAD: b12f5440d8ca02e8f9ab4f1461f9214295cc4f66 Merge branch 'linus' into efi/urgent, to resolve conflict
>
> A single fix that adds an annotation to resolve a kmemleak false
> positive.
>
> Thanks,
>
> Ingo
>
> ------------------>
> Qian Cai (1):
> efi: Let kmemleak ignore false positives
>
>
> drivers/firmware/efi/efi.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
> index 4c46ff6f2242..7ac09dd8f268 100644
> --- a/drivers/firmware/efi/efi.c
> +++ b/drivers/firmware/efi/efi.c
> @@ -31,6 +31,7 @@
> #include <linux/acpi.h>
> #include <linux/ucs2_string.h>
> #include <linux/memblock.h>
> +#include <linux/kmemleak.h>
>
> #include <asm/early_ioremap.h>
>
> @@ -1026,6 +1027,8 @@ int __ref efi_mem_reserve_persistent(phys_addr_t addr, u64 size)
> if (!rsv)
> return -ENOMEM;
>
> + kmemleak_ignore(rsv);
> +
> rsv->size = EFI_MEMRESERVE_COUNT(PAGE_SIZE);
> atomic_set(&rsv->count, 1);
> rsv->entry[0].base = addr;

I was hoping we could merge this patch (so we can backport it), but
resolve the conflict by dropping the kmemleak_ignore() again, since it
will now complain since the kmalloc() has been replaced with a
__get_free_page() in the mean time (if that makes sense)