From: Christian Brauner <brauner@kernel.org>
To: Alexei Starovoitov <ast@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Andrii Nakryiko <andrii@kernel.org>,
Martin KaFai Lau <martin.lau@linux.dev>,
Tejun Heo <tj@kernel.org>
Cc: KP Singh <kpsingh@kernel.org>,
bpf@vger.kernel.org, linux-kernel@vger.kernel.org,
cgroups@vger.kernel.org,
Lennart Poettering <lennart@poettering.net>,
Christian Brauner <brauner@kernel.org>
Subject: [PATCH 0/4] bpf: add a few hooks for sandboxing
Date: Fri, 20 Feb 2026 01:38:28 +0100 [thread overview]
Message-ID: <20260220-work-bpf-namespace-v1-0-866207db7b83@kernel.org> (raw)
Hey,
I'm in the process of adding "universal truths" bpf lsm programs to
systemd that implement and enforce core system assumptions.
One aspect of this will be advanced namespace management so we can have
things like systemd-nsresourced tightly manage namespaces it allocates
and implement advanced access policies for them. We already do parts of
that but it's rather limited and relies on some workarounds as well
because we don't have the infrastructure for it. We also currently need
to rely on ugly workarounds such as attaching to very arcane tracing
hooks to be notified when namespaces go away.
The second aspect is managing cgroup attaches. This is a core feature
that has been demanded for a long time in systemd. We want to be able to
ensure that some services cannot ever escape their cgroups.
The new hooks are available to bpf lsm programs. Selftests included.
Signed-off-by: Christian Brauner <brauner@kernel.org>
---
Christian Brauner (4):
ns: add bpf hooks
cgroup: add bpf hook for attach
selftests/bpf: add ns hook selftest
selftests/bpf: add cgroup attach selftests
include/linux/bpf_lsm.h | 36 ++
kernel/bpf/bpf_lsm.c | 37 +++
kernel/cgroup/cgroup.c | 18 +-
kernel/nscommon.c | 9 +-
kernel/nsproxy.c | 7 +
.../selftests/bpf/prog_tests/cgroup_attach.c | 362 +++++++++++++++++++++
.../testing/selftests/bpf/prog_tests/ns_sandbox.c | 99 ++++++
.../selftests/bpf/progs/test_cgroup_attach.c | 85 +++++
.../testing/selftests/bpf/progs/test_ns_sandbox.c | 91 ++++++
9 files changed, 736 insertions(+), 8 deletions(-)
---
base-commit: 01582681b1e6881b49d848f1a6e200eace6aac0c
change-id: 20260219-work-bpf-namespace-b5699fad250e
next reply other threads:[~2026-02-20 0:38 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-20 0:38 Christian Brauner [this message]
2026-02-20 0:38 ` [PATCH 1/4] ns: add bpf hooks Christian Brauner
2026-02-23 10:36 ` Matt Bobrowski
2026-02-23 11:12 ` Christian Brauner
2026-02-24 0:15 ` Matt Bobrowski
2026-02-23 12:44 ` Djalal Harouni
2026-02-27 11:04 ` Christian Brauner
2026-02-24 1:16 ` Matt Bobrowski
2026-02-27 10:33 ` Christian Brauner
2026-03-24 5:10 ` Matt Bobrowski
2026-02-24 13:35 ` Matt Bobrowski
2026-02-27 14:33 ` Christian Brauner
2026-03-24 5:27 ` Matt Bobrowski
2026-02-24 23:04 ` Song Liu
2026-02-27 10:28 ` Christian Brauner
2026-02-27 16:38 ` Song Liu
2026-03-02 9:46 ` Christian Brauner
2026-03-03 16:44 ` Song Liu
2026-02-20 0:38 ` [PATCH 2/4] cgroup: add bpf hook for attach Christian Brauner
2026-02-20 15:16 ` Tejun Heo
2026-02-21 17:57 ` Christian Brauner
2026-02-23 15:47 ` Michal Koutný
2026-02-27 13:44 ` Christian Brauner
2026-03-09 16:45 ` Michal Koutný
2026-02-20 0:38 ` [PATCH 3/4] selftests/bpf: add ns hook selftest Christian Brauner
2026-03-05 17:36 ` Alan Maguire
2026-02-20 0:38 ` [PATCH 4/4] selftests/bpf: add cgroup attach selftests Christian Brauner
2026-03-05 17:43 ` Alan Maguire
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260220-work-bpf-namespace-v1-0-866207db7b83@kernel.org \
--to=brauner@kernel.org \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=cgroups@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=kpsingh@kernel.org \
--cc=lennart@poettering.net \
--cc=linux-kernel@vger.kernel.org \
--cc=martin.lau@linux.dev \
--cc=tj@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
powered by JetHome