Go to file
Quentin Monnet 9bf48fa19a libbpf: Prevent null-pointer dereference when prog to load has no BTF
In bpf_objec_load_prog(), there's no guarantee that obj->btf is non-NULL
when passing it to btf__fd(), and this function does not perform any
check before dereferencing its argument (as bpf_object__btf_fd() used to
do). As a consequence, we get segmentation fault errors in bpftool (for
example) when trying to load programs that come without BTF information.

v2: Keep btf__fd() in the fix instead of reverting to bpf_object__btf_fd().

Fixes: df7c3f7d3a ("libbpf: make uniform use of btf__fd() accessor inside libbpf")
Suggested-by: Andrii Nakryiko <andrii@kernel.org>
Signed-off-by: Quentin Monnet <qmo@kernel.org>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20240314150438.232462-1-qmo@kernel.org
2024-03-14 13:41:17 -07:00
arch Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
block Revert "dm: use queue_limits_set" 2024-03-11 17:11:28 -07:00
certs This update includes the following changes: 2023-11-02 16:15:30 -10:00
crypto crypto: lskcipher - Copy IV in lskcipher glue code always 2024-02-24 08:37:24 +08:00
Documentation Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
drivers Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
fs Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
include Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
init Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
io_uring for-6.9/io_uring-20240310 2024-03-11 11:35:31 -07:00
ipc shm: Slim down dependencies 2023-12-20 19:26:31 -05:00
kernel Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
lib Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
LICENSES LICENSES: Add the copyleft-next-0.3.1 license 2022-11-08 15:44:01 +01:00
mm Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
net Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
rust Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
samples Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
scripts Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
security Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
sound ASoC: Fixes for v6.8 2024-03-08 08:53:36 +01:00
tools libbpf: Prevent null-pointer dereference when prog to load has no BTF 2024-03-14 13:41:17 -07:00
usr Kbuild updates for v6.8 2024-01-18 17:57:07 -08:00
virt KVM: Make KVM_MEM_GUEST_MEMFD mutually exclusive with KVM_MEM_READONLY 2024-02-22 17:07:06 -08:00
.clang-format clang-format: Update with v6.7-rc4's for_each macro list 2023-12-08 23:54:38 +01:00
.cocciconfig
.editorconfig Add .editorconfig file for basic formatting 2023-12-28 16:22:47 +09:00
.get_maintainer.ignore Add Jeff Kirsher to .get_maintainer.ignore 2024-03-08 11:36:54 +00:00
.gitattributes .gitattributes: set diff driver for Rust source code files 2023-05-31 17:48:25 +02:00
.gitignore Add .editorconfig file for basic formatting 2023-12-28 16:22:47 +09:00
.mailmap Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
.rustfmt.toml rust: add .rustfmt.toml 2022-09-28 09:02:20 +02:00
COPYING COPYING: state that all contributions really are covered by this file 2020-02-10 13:32:20 -08:00
CREDITS vfs-6.9.ntfs 2024-03-11 09:55:17 -07:00
Kbuild Kbuild updates for v6.1 2022-10-10 12:00:45 -07:00
Kconfig kbuild: ensure full rebuild when the compiler is updated 2020-05-12 13:28:33 +09:00
MAINTAINERS Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
Makefile Rust changes for v6.9 2024-03-11 12:31:28 -07:00
README README: Fix spelling/capitalization 2024-02-12 16:42:13 -07:00

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the ReStructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.