kernel/rcu/tasks.h

Source file repositories/reference/linux-study-clean/kernel/rcu/tasks.h

File Facts

System
Linux kernel
Corpus path
kernel/rcu/tasks.h
Extension
.h
Size
54409 bytes
Lines
1610
Domain
Core OS
Bucket
Scheduler, Processes, Timers, Sync, And Syscalls
Inferred role
Core OS: exported/initcall integration point
Status
integration implementation candidate

Why This File Exists

Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.

Dependency Surface

Detected Declarations

Annotated Snippet

core_initcall(rcu_init_tasks_generic);

#else /* #ifdef CONFIG_TASKS_RCU_GENERIC */
static inline void rcu_tasks_bootup_oddness(void) {}
#endif /* #else #ifdef CONFIG_TASKS_RCU_GENERIC */

#ifdef CONFIG_TASKS_TRACE_RCU

////////////////////////////////////////////////////////////////////////
//
// Tracing variant of Tasks RCU.  This variant is designed to be used
// to protect tracing hooks, including those of BPF.  This variant
// is implemented via a straightforward mapping onto SRCU-fast.

DEFINE_SRCU_FAST(rcu_tasks_trace_srcu_struct);
EXPORT_SYMBOL_GPL(rcu_tasks_trace_srcu_struct);

#endif /* #else #ifdef CONFIG_TASKS_TRACE_RCU */

Annotation

Implementation Notes