MCPcopy Create free account
hub / github.com/F-Stack/f-stack / critical_exit

Function critical_exit

freebsd/sys/systm.h:294–309  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

292}
293
294static __inline void
295critical_exit(void)
296{
297#ifndef FSTACK
298 struct thread_lite *td;
299
300 td = (struct thread_lite *)curthread;
301 KASSERT(td->td_critnest != 0,
302 ("critical_exit: td_critnest == 0"));
303 atomic_interrupt_fence();
304 td->td_critnest--;
305 atomic_interrupt_fence();
306 if (__predict_false(td->td_owepreempt))
307 critical_exit_preempt();
308#endif
309}
310#endif
311
312#ifdef EARLY_PRINTF

Callers 15

smr_exitFunction · 0.70
smr_lazy_exitFunction · 0.70
seqc_write_endFunction · 0.70
buf_ring_enqueueFunction · 0.70
buf_ring_dequeue_mcFunction · 0.70
pciereg_cfgreadFunction · 0.50
pciereg_cfgwriteFunction · 0.50
set_fsbaseFunction · 0.50
set_gsbaseFunction · 0.50
i386_extend_pcbFunction · 0.50
pmap_pte_ufastFunction · 0.50

Calls 1

critical_exit_preemptFunction · 0.85

Tested by

no test coverage detected