Re: [PATCH v9 01/10] btf: Add a new kfunc flag which allows to mark a function to be sleepable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 8/10/22 4:25 PM, Benjamin Tissoires wrote:
On Wed, Aug 10, 2022 at 3:44 PM Roberto Sassu <roberto.sassu@xxxxxxxxxx> wrote:
From: Jarkko Sakkinen [mailto:jarkko@xxxxxxxxxx]
Sent: Tuesday, August 9, 2022 6:55 PM
On Tue, Aug 09, 2022 at 03:45:54PM +0200, Roberto Sassu wrote:
From: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>

From: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>

This allows to declare a kfunc as sleepable and prevents its use in
a non sleepable program.

Nit: "Declare a kfunc as sleepable and prevent its use in a
non-sleepable program."

It's missing the part *how* the patch accomplishes its goals.

I will add:

If an eBPF program is going to call a kfunc declared as sleepable,
eBPF will look at the eBPF program flags. If BPF_F_SLEEPABLE is
not set, execution of that program is denied.

All those changes are looking good to me.

Thanks a lot for keeping pushing on this patch :)

This single one from the series got already applied here:

  https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git/commit/?id=fa96b24204af42274ec13dfb2f2e6990d7510e55

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
Co-developed-by: Yosry Ahmed <yosryahmed@xxxxxxxxxx>
Signed-off-by: Yosry Ahmed <yosryahmed@xxxxxxxxxx>
Signed-off-by: Hao Luo <haoluo@xxxxxxxxxx>
---
  Documentation/bpf/kfuncs.rst | 6 ++++++
  include/linux/btf.h          | 1 +
  kernel/bpf/btf.c             | 9 +++++++++
  3 files changed, 16 insertions(+)

diff --git a/Documentation/bpf/kfuncs.rst b/Documentation/bpf/kfuncs.rst
index c0b7dae6dbf5..c8b21de1c772 100644
--- a/Documentation/bpf/kfuncs.rst
+++ b/Documentation/bpf/kfuncs.rst
@@ -146,6 +146,12 @@ that operate (change some property, perform some
operation) on an object that
  was obtained using an acquire kfunc. Such kfuncs need an unchanged pointer
to
  ensure the integrity of the operation being performed on the expected object.



[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux