Lines Matching refs:smr

196 static SYSCTL_NODE(_debug, OID_AUTO, smr, CTLFLAG_RW | CTLFLAG_MPSAFE, NULL,
216 smr_lazy_advance(smr_t smr, smr_shared_t s) in smr_lazy_advance() argument
270 smr_default_advance(smr_t smr, smr_shared_t s) in smr_default_advance() argument
275 KASSERT((zpcpu_get(smr)->c_flags & SMR_LAZY) == 0, in smr_default_advance()
292 smr_wait(smr, goal - SMR_SEQ_MAX_ADVANCE); in smr_default_advance()
304 smr_deferred_advance(smr_t smr, smr_shared_t s, smr_t self) in smr_deferred_advance() argument
310 return (smr_default_advance(smr, s)); in smr_deferred_advance()
327 smr_advance(smr_t smr) in smr_advance() argument
337 SMR_ASSERT_NOT_ENTERED(smr); in smr_advance()
347 self = zpcpu_get(smr); in smr_advance()
352 goal = smr_default_advance(smr, s); in smr_advance()
354 goal = smr_lazy_advance(smr, s); in smr_advance()
356 goal = smr_deferred_advance(smr, s, self); in smr_advance()
418 smr_poll_scan(smr_t smr, smr_shared_t s, smr_seq_t s_rd_seq, in smr_poll_scan() argument
439 c_seq = smr_poll_cpu(zpcpu_get_cpu(smr, i), s_rd_seq, goal, in smr_poll_scan()
475 smr_poll(smr_t smr, smr_seq_t goal, bool wait) in smr_poll() argument
487 KASSERT(!wait || !SMR_ENTERED(smr), in smr_poll()
489 KASSERT(!wait || (zpcpu_get(smr)->c_flags & SMR_LAZY) == 0, in smr_poll()
499 self = zpcpu_get(smr); in smr_poll()
509 smr_lazy_advance(smr, s); in smr_poll()
566 s_rd_seq = smr_poll_scan(smr, s, s_rd_seq, s_wr_seq, goal, wait); in smr_poll()
586 smr_t smr, c; in smr_create() local
591 smr = uma_zalloc_pcpu(smr_zone, M_WAITOK); in smr_create()
599 c = zpcpu_get_cpu(smr, i); in smr_create()
608 return (smr); in smr_create()
612 smr_destroy(smr_t smr) in smr_destroy() argument
615 smr_synchronize(smr); in smr_destroy()
616 uma_zfree(smr_shared_zone, smr->c_shared); in smr_destroy()
617 uma_zfree_pcpu(smr_zone, smr); in smr_destroy()
629 smr_zone = uma_zcreate("SMR CPU", sizeof(struct smr), in smr_init()