]> www.infradead.org Git - users/jedix/linux-maple.git/commit
libbpf: Fix implicit memfd_create() for bionic
authorCarlos Llamas <cmllamas@google.com>
Sun, 30 Mar 2025 21:13:23 +0000 (21:13 +0000)
committerAndrii Nakryiko <andrii@kernel.org>
Fri, 4 Apr 2025 15:52:37 +0000 (08:52 -0700)
commit75011ad69bc54396703867b5434f1622343a848e
treeb71d26d5e79a4cb70b8c5ad6a5de5e35dfef0c9b
parent06a22366d6a11ca8ed03c738171822ac9b714cfd
libbpf: Fix implicit memfd_create() for bionic

Since memfd_create() is not consistently available across different
bionic libc implementations, using memfd_create() directly can break
some Android builds:

  tools/lib/bpf/linker.c:576:7: error: implicit declaration of function 'memfd_create' [-Werror,-Wimplicit-function-declaration]
    576 |         fd = memfd_create(filename, 0);
        |              ^

To fix this, relocate and inline the sys_memfd_create() helper so that
it can be used in "linker.c". Similar issues were previously fixed by
commit 9fa5e1a180aa ("libbpf: Call memfd_create() syscall directly").

Fixes: 6d5e5e5d7ce1 ("libbpf: Extend linker API to support in-memory ELF files")
Signed-off-by: Carlos Llamas <cmllamas@google.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20250330211325.530677-1-cmllamas@google.com
tools/lib/bpf/libbpf.c
tools/lib/bpf/libbpf_internal.h
tools/lib/bpf/linker.c