Re: [PATCH bpf] bpf: update bpf_get_smp_processor_id() documentation

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

 





On 9/14/21 3:23 PM, Matteo Croce wrote:
From: Matteo Croce <mcroce@xxxxxxxxxxxxx>

Since commit 1e6c62a88215 ("bpf: Introduce sleepable BPF programs"), BPF
programs can sleep if the BPF_F_SLEEPABLE flag is set.
Update the documentation accordingly.

Fixes: 1e6c62a88215 ("bpf: Introduce sleepable BPF programs")

I think we don't need this Fixes tag as this patch should target to
bpf-next tree. There is no need to backport to bpf tree since it is
just a documentation change.

Based on *current* implementation, referring to sleepable BPF
program commit is not needed any more. See below for the suggested
change.

Signed-off-by: Matteo Croce <mcroce@xxxxxxxxxxxxx>
---
  include/uapi/linux/bpf.h | 6 +++---
  1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/include/uapi/linux/bpf.h b/include/uapi/linux/bpf.h
index d21326558d42..5e3b2fb62d84 100644
--- a/include/uapi/linux/bpf.h
+++ b/include/uapi/linux/bpf.h
@@ -1629,9 +1629,9 @@ union bpf_attr {
   * u32 bpf_get_smp_processor_id(void)
   * 	Description
   * 		Get the SMP (symmetric multiprocessing) processor id. Note that
- * 		all programs run with preemption disabled, which means that the
- * 		SMP processor id is stable during all the execution of the
- * 		program.
+ * 		programs run with preemption disabled unless BPF_F_SLEEPABLE is
+ * 		set, which means that the SMP processor id is stable during all
+ * 		the execution of the program.

Currently, migrate_disable() means true migration disable and preemption is possible, and BPF_F_SLEEPABLE programs are also protected by migrate_disable().

So the patch should just change "with preemption disabled" to
"with migration disabled" to reflect the new implementation.

   * 	Return
   * 		The SMP id of the processor running the program.
   *





[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