Go to file
Viktor Malik f186f437f9
bpf: Don't check for recursion in bpf_wq_work.
JIRA: https://issues.redhat.com/browse/RHEL-30773

commit dc92febf7b93da5049fe177804e6b1961fcc6bd7
Author: Alexei Starovoitov <ast@kernel.org>
Date:   Wed Apr 24 09:00:23 2024 -0700

    bpf: Don't check for recursion in bpf_wq_work.
    
    __bpf_prog_enter_sleepable_recur does recursion check which is not applicable
    to wq callback. The callback function is part of bpf program and bpf prog might
    be running on the same cpu. So recursion check would incorrectly prevent
    callback from running. The code can call __bpf_prog_enter_sleepable(), but
    run_ctx would be fake, hence use explicit rcu_read_lock_trace();
    migrate_disable(); to address this problem. Another reason to open code is
    __bpf_prog_enter* are not available in !JIT configs.
    
    Reported-by: kernel test robot <lkp@intel.com>
    Closes: https://lore.kernel.org/oe-kbuild-all/202404241719.IIGdpAku-lkp@intel.com/
    Closes: https://lore.kernel.org/oe-kbuild-all/202404241811.FFV4Bku3-lkp@intel.com/
    Fixes: eb48f6cd41a0 ("bpf: wq: add bpf_wq_init")
    Signed-off-by: Alexei Starovoitov <ast@kernel.org>

Signed-off-by: Viktor Malik <vmalik@redhat.com>
2024-11-11 07:44:51 +01:00
Documentation bpf, docs: Fix formatting nit in instruction-set.rst 2024-11-11 07:44:48 +01:00
LICENSES
arch bpf: Fix JIT of is_mov_percpu_addr instruction. 2024-11-11 07:44:48 +01:00
block scsi: block: Don't check REQ_ATOMIC for reads 2024-09-27 11:19:19 +08:00
certs
crypto Merge: crypto: tegra - Add Tegra Security Engine driver 2024-10-25 16:09:01 +00:00
drivers Merge: USB/TBT code rebase of supported drivers to upstream v6.10 2024-11-06 08:32:22 +00:00
fs Merge: xfs: XFS update #1 for RHEL9.6 2024-11-06 08:27:23 +00:00
include bpf: wq: add bpf_wq_set_callback_impl 2024-11-11 07:44:51 +01:00
init Merge: BPF 6.9 rebase 2024-10-30 07:25:08 +00:00
io_uring io_uring/cmd: fix tw <-> issue_flags conversion 2024-09-27 11:19:16 +08:00
ipc mm: Re-introduce vm_flags to do_mmap() 2024-10-01 11:17:00 -04:00
kernel bpf: Don't check for recursion in bpf_wq_work. 2024-11-11 07:44:51 +01:00
lib bpf, tests: Fix typos in comments 2024-11-11 07:44:47 +01:00
mm Merge: fix page mapping if vm_area_alloc_pages() with high order fallback to order 0 2024-11-01 08:08:13 +00:00
net bpf: add bpf_modify_return_test_tp() kfunc triggering tracepoint 2024-11-07 13:58:36 +01:00
redhat [redhat] kernel-5.14.0-527.el9 2024-11-06 08:36:08 +00:00
samples Merge: fprobe: backport prerequisites for BPF session probes 2024-11-05 11:34:58 +00:00
scripts scripts/bpf_doc: Use silent mode when exec make cmd 2024-10-15 10:49:16 +02:00
security Merge: BPF 6.9 rebase 2024-10-30 07:25:08 +00:00
sound Merge: CNB96: timekeeping: add clocksource ID and infrastructure for converting to/from a base clock 2024-11-05 11:41:13 +00:00
tools selftests/bpf: wq: add bpf_wq_start() checks 2024-11-11 07:44:51 +01:00
usr kexec.h: add linux/kexec.h to UAPI compile-test coverage 2024-05-15 13:58:51 +08:00
virt kvm: explicitly set FOLL_HONOR_NUMA_FAULT in hva_to_pfn_slow() 2024-10-01 11:20:48 -04:00
.clang-format printk: Prepare for SRCU console list protection 2024-05-09 11:25:16 -04:00
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore redhat: rhdocs: delete .get_maintainer.conf 2024-06-06 09:36:57 -04:00
.gitlab-ci.yml gitlab-ci: provide consistent kcidb_tree_name 2024-10-29 15:17:07 +01:00
.mailmap
COPYING
CREDITS MAINTAINERS: Drop Gustavo Pimentel as PCI DWC Maintainer 2024-05-13 15:56:48 -06:00
Kbuild
Kconfig
Kconfig.redhat
MAINTAINERS Merge: USB/TBT code rebase of supported drivers to upstream v6.10 2024-11-06 08:32:22 +00:00
Makefile Merge: Update MM Selftests for 9.5 2024-08-21 12:51:18 +00:00
Makefile.rhelver [redhat] kernel-5.14.0-527.el9 2024-11-06 08:36:08 +00: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.