Lines Matching full:epoch
31 .Nm epoch ,
45 .Nd kernel epoch based reclamation
52 struct epoch; /* Opaque */
54 .Vt typedef "struct epoch *epoch_t" ;
70 .Fn epoch_free "epoch_t epoch"
72 .Fn epoch_enter "epoch_t epoch"
74 .Fn epoch_exit "epoch_t epoch"
76 .Fn epoch_wait "epoch_t epoch"
78 .Fn epoch_enter_preempt "epoch_t epoch" "epoch_tracker_t et"
80 .Fn epoch_exit_preempt "epoch_t epoch" "epoch_tracker_t et"
82 .Fn epoch_wait_preempt "epoch_t epoch"
84 .Fn epoch_call "epoch_t epoch" "epoch_callback_t callback" "epoch_context_t ctx"
86 .Fn epoch_drain_callbacks "epoch_t epoch"
88 .Fn in_epoch "epoch_t epoch"
90 .Fn in_epoch_verbose "epoch_t epoch" "int dump_onfail"
95 Entering and leaving an epoch section will never block.
122 .Vt epoch
124 Only non-sleepable locks may be acquired during a preemptible epoch.
138 .Vt epoch Ns s
142 Threads indicate the start of an epoch critical section by calling
162 entered the epoch either synchronously or asynchronously.
173 Default, non-preemptible epoch wait
176 preemptible epoch wait
178 (In the default type, none of the threads in an epoch section will be preempted
181 INVARIANTS can assert that a thread is in an epoch by using
183 .Fn in_epoch "epoch"
185 .Fn in_epoch_verbose "epoch" "0" .
189 .Fn in_epoch_verbose "epoch" "1"
192 The epoch API currently does not support sleeping in epoch_preempt sections.
195 in the middle of an epoch section for the same epoch as this will lead to a deadlock.
201 function calls on the same epoch.
203 referred to by the epoch callback(s) which are not refcounted and are
206 invalidating the shared resource(s) used by the epoch callback(s).
257 Thread 1 traverses the ifaddr list in an epoch.
258 Thread 2 unlinks with the corresponding epoch safe macro, marks as logically free,
280 Threads are pinned during epoch sections, so if a thread in a section is then
285 Callers must use safe list and tailq traversal routines in an epoch (see ck_queue).
286 When modifying a list referenced from an epoch section safe removal