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. *