Go to file
Jerome Marchand 5fb8030979 bpf: Verify ownership relationships for user BTF types
Bugzilla: https://bugzilla.redhat.com/2177177

commit 865ce09a49d79d2b2c1d980f4c05ffc0b3517bdc
Author: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Date:   Fri Nov 18 07:25:57 2022 +0530

    bpf: Verify ownership relationships for user BTF types

    Ensure that there can be no ownership cycles among different types by
    way of having owning objects that can hold some other type as their
    element. For instance, a map value can only hold allocated objects, but
    these are allowed to have another bpf_list_head. To prevent unbounded
    recursion while freeing resources, elements of bpf_list_head in local
    kptrs can never have a bpf_list_head which are part of list in a map
    value. Later patches will verify this by having dedicated BTF selftests.

    Also, to make runtime destruction easier, once btf_struct_metas is fully
    populated, we can stash the metadata of the value type directly in the
    metadata of the list_head fields, as that allows easier access to the
    value type's layout to destruct it at runtime from the btf_field entry
    of the list head itself.

    Signed-off-by: Kumar Kartikeya Dwivedi <memxor@gmail.com>
    Link: https://lore.kernel.org/r/20221118015614.2013203-8-memxor@gmail.com
    Signed-off-by: Alexei Starovoitov <ast@kernel.org>

Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
2023-04-28 11:43:06 +02:00
Documentation bpf/docs: Include blank lines between bullet points in bpf_devel_QA.rst 2023-04-28 11:43:05 +02:00
LICENSES
arch bpf: Remove prog->active check for bpf_lsm and bpf_iter 2023-04-28 11:42:57 +02:00
block Revert "block: Merge bio before checking ->cached_rq" 2023-04-23 09:43:06 +08:00
certs certs: Move load_certificate_list() to be with the asymmetric keys code 2022-06-23 11:32:02 +01:00
crypto Merge tag 'kernel-5.14.0-284.2.1.el9_2' from 9.2 2023-03-17 09:14:43 -03:00
drivers Merge: i40e driver update 2023-04-27 07:47:23 +02:00
fs Merge: redhat: Fix existing compilation warnings & enable CONFIG_WERROR for x86-64 2023-04-27 07:47:22 +02:00
include bpf: Verify ownership relationships for user BTF types 2023-04-28 11:43:06 +02:00
init gcc: disable -Warray-bounds for gcc-11 too 2023-04-19 21:33:22 -04:00
ipc mm,hugetlb: remove mlock ulimit for SHM_HUGETLB 2022-10-12 07:27:31 -04:00
kernel bpf: Verify ownership relationships for user BTF types 2023-04-28 11:43:06 +02:00
lib Merge: drivers/char/random: hackbench performance fix 2023-04-27 07:47:21 +02:00
mm Merge: mm/filemap: fix page end in filemap_get_read_batch 2023-04-16 14:59:56 +02:00
net bpf: Expand map key argument of bpf_redirect_map to u64 2023-04-28 11:43:05 +02:00
redhat [redhat] kernel-5.14.0-305.el9 2023-04-27 08:29:46 +02:00
samples samples/bpf: Fix tracex2 error: No such file or directory 2023-04-28 11:43:02 +02:00
scripts bpf: Implement cgroup storage available to non-cgroup-attached bpf progs 2023-04-28 11:42:58 +02:00
security integrity/powerpc: Support loading keys from PLPKS 2023-04-01 07:42:01 +00:00
sound ASoC: amd: ps: Add a module parameter to influence pdm_gain 2023-02-14 17:32:53 +01:00
tools selftests/bpf: Pass target triple to get_sys_includes macro 2023-04-28 11:43:05 +02:00
usr kbuild: rename cmd_{bzip2,lzma,lzo,lz4,xzkern,zstd22} 2023-03-24 11:18:37 -04:00
virt kvm/vfio: Fix potential deadlock on vfio group_lock 2023-03-09 16:36:09 -07:00
.clang-format Merge: Rebase VFIO and IOMMUFD up to v6.2 2023-04-06 14:03:52 +02:00
.cocciconfig
.get_maintainer.conf get_maintainer.conf: Update with new location of RHMAINTAINERS 2022-01-19 14:26:16 -05:00
.get_maintainer.ignore
.gitattributes
.gitignore kbuild: split the second line of *.mod into *.usyms 2023-03-24 17:06:53 -04:00
.gitlab-ci.yml CI: Fix kernel-64k DataWarehouse name 2023-03-06 21:20:31 +01:00
.mailmap mailmap: remove my redhat.com address from RHEL9's .mailmap file 2022-09-26 09:34:38 -04:00
COPYING
CREDITS
Kbuild
Kconfig
Kconfig.redhat
MAINTAINERS Merge: CNB: rebase/update devlink for RHEL 9.3 2023-04-27 07:47:22 +02:00
Makefile kbuild: make *.mod not depend on *.o 2023-03-24 17:06:53 -04:00
Makefile.rhelver [redhat] kernel-5.14.0-305.el9 2023-04-27 08:29:46 +02:00
README
makefile

README

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.