| /linux/tools/verification/models/sched/ |
| H A D | sssw.dot | 8 {node [shape = circle] "sleepable"}; 13 "runnable" -> "sleepable" [ label = "sched_set_state_sleepable" ]; 18 "signal_wakeup" -> "sleepable" [ label = "sched_set_state_sleepable" ]; 19 "sleepable" [label = "sleepable"]; 20 "sleepable" -> "runnable" [ label = "sched_set_state_runnable\nsched_wakeup" ]; 21 "sleepable" -> "signal_wakeup" [ label = "sched_switch_yield" ]; 22 …"sleepable" -> "sleepable" [ label = "sched_set_state_sleepable\nsched_switch_in\nsched_switch_pre… 23 "sleepable" -> "sleeping" [ label = "sched_switch_suspend\nsched_switch_blocking" ];
|
| /linux/drivers/infiniband/sw/rxe/ |
| H A D | rxe_pool.h | 59 bool sleepable); 61 #define rxe_add_to_pool_ah(pool, obj, sleepable) __rxe_add_to_pool(pool, \ argument 62 &(obj)->elem, sleepable) 73 int __rxe_cleanup(struct rxe_pool_elem *elem, bool sleepable); 75 #define rxe_cleanup_ah(obj, sleepable) __rxe_cleanup(&(obj)->elem, sleepable) argument
|
| /linux/kernel/bpf/ |
| H A D | trampoline.c | 1305 bool sleepable = prog->sleepable; in bpf_trampoline_enter() local 1308 return sleepable ? __bpf_prog_enter_sleepable_recur : in bpf_trampoline_enter() 1315 return sleepable ? __bpf_prog_enter_sleepable : __bpf_prog_enter; in bpf_trampoline_enter() 1320 bool sleepable = prog->sleepable; in bpf_trampoline_exit() local 1323 return sleepable ? __bpf_prog_exit_sleepable_recur : in bpf_trampoline_exit() 1330 return sleepable ? __bpf_prog_exit_sleepable : __bpf_prog_exit; in bpf_trampoline_exit()
|
| H A D | arena.c | 49 static void arena_free_pages(struct bpf_arena *arena, long uaddr, long page_cnt, bool sleepable); 550 bool sleepable) in arena_alloc_pages() argument 653 arena_free_pages(arena, uaddr32, mapped, sleepable); in arena_alloc_pages() 679 static void arena_free_pages(struct bpf_arena *arena, long uaddr, long page_cnt, bool sleepable) in arena_free_pages() argument 704 if (!sleepable) in arena_free_pages()
|
| H A D | core.c | 2450 map->owner->sleepable = fp->sleepable; in __bpf_prog_map_compatible() 2463 map->owner->sleepable == fp->sleepable; in __bpf_prog_map_compatible() 2962 bool sleepable; in __bpf_free_used_maps() local 2965 sleepable = aux->prog->sleepable; in __bpf_free_used_maps() 2970 if (sleepable) in __bpf_free_used_maps()
|
| H A D | bpf_iter.c | 548 if (prog->sleepable && !bpf_iter_target_support_resched(tinfo)) in bpf_iter_link_attach() 685 if (prog->sleepable) { in bpf_iter_run_prog()
|
| H A D | syscall.c | 2382 if (prog->sleepable) in __bpf_prog_put_noref() 2997 prog->sleepable = !!(attr->prog_flags & BPF_F_SLEEPABLE); in bpf_prog_load() 3182 enum bpf_attach_type attach_type, bool sleepable) in bpf_link_init_sleepable() argument 3187 link->sleepable = sleepable; in bpf_link_init_sleepable() 3289 if (link->sleepable || (link->prog && link->prog->sleepable)) in bpf_link_free() 6135 if (prog->sleepable) in bpf_prog_bind_map()
|
| H A D | fixups.c | 1103 func[i]->sleepable = prog->sleepable; in jit_subprogs()
|
| H A D | verifier.c | 12992 bool sleepable, rcu_lock, rcu_unlock, preempt_disable, preempt_enable; in check_kfunc_call() local 13053 sleepable = bpf_is_kfunc_sleepable(&meta); in check_kfunc_call() 13054 if (sleepable && !in_sleepable(env)) { in check_kfunc_call() 13138 if (sleepable && !in_sleepable_context(env)) { in check_kfunc_call() 18117 if (prog->sleepable) in check_map_prog_compatibility() 18197 if (env->prog->sleepable) in __add_used_map() 18707 state->in_sleepable = env->prog->sleepable; in do_check_common() 19420 if (prog->sleepable) { in bpf_check_attach_target() 19554 if (prog->sleepable) in check_attach_btf_id() 19561 if (prog->sleepable && !can_be_sleepable(prog)) { in check_attach_btf_id()
|
| H A D | helpers.c | 2235 return prog->sleepable ? &bpf_get_task_stack_sleepable_proto in bpf_base_func_proto()
|
| /linux/kernel/trace/rv/monitors/sssw/ |
| H A D | Kconfig | 10 Monitor to ensure sched_set_state to sleepable leads to sleeping and
|
| /linux/drivers/hid/bpf/ |
| H A D | hid_bpf_struct_ops.c | 51 if (prog->sleepable) in hid_bpf_ops_check_member()
|
| /linux/net/bpf/ |
| H A D | bpf_dummy_struct_ops.c | 229 if (prog->sleepable) in bpf_dummy_ops_check_member()
|
| /linux/include/linux/ |
| H A D | bpf.h | 290 bool sleepable; member 1794 sleepable:1; /* BPF program is sleepable */ member 1845 bool sleepable; member 2513 if (!prog->sleepable) in bpf_prog_run_array_uprobe() 2520 if (!prog->sleepable) in bpf_prog_run_array_uprobe() 2763 enum bpf_attach_type attach_type, bool sleepable); 3131 enum bpf_attach_type attach_type, bool sleepable) in bpf_link_init_sleepable() argument
|
| /linux/kernel/trace/ |
| H A D | bpf_trace.c | 1320 return prog->sleepable ? &bpf_get_stack_sleepable_proto : &bpf_get_stack_proto; in kprobe_prog_func_proto() 2757 if (prog->sleepable) in bpf_kprobe_multi_link_attach() 3094 bool sleepable = prog->sleepable; in uprobe_prog_run() local 3101 if (sleepable) in uprobe_prog_run() 3114 if (sleepable) in uprobe_prog_run()
|
| /linux/Documentation/locking/ |
| H A D | mutex-design.rst | 69 While formally kernel mutexes are sleepable locks, it is path (ii) that
|
| /linux/Documentation/hid/ |
| H A D | hid-bpf.rst | 176 Note that ``hid_rdesc_fixup`` can be declared as sleepable (``SEC("struct_ops.s/hid_rdesc_fixup")``… 201 Available API that can be used in syscall HID-BPF programs or in sleepable HID-BPF struct_ops progr…
|
| /linux/tools/sched_ext/ |
| H A D | README.md | 171 useful BPF features, such as sleepable per-task storage allocation in the
|
| /linux/tools/memory-model/Documentation/ |
| H A D | ordering.txt | 118 sleepable contexts. Therefore, RCU's grace-period primitives are
|
| /linux/Documentation/RCU/ |
| H A D | checklist.rst | 413 and srcu_read_unlock()), hence the "SRCU": "sleepable RCU".
|
| /linux/kernel/sched/ |
| H A D | ext.c | 7630 if (prog->sleepable) in bpf_scx_check_member()
|
| /linux/kernel/events/ |
| H A D | core.c | 11682 if (prog->type == BPF_PROG_TYPE_KPROBE && prog->sleepable && !is_uprobe) in __perf_event_set_bpf_prog()
|