Lines Matching refs:smr

197 static SYSCTL_NODE(_debug, OID_AUTO, smr, CTLFLAG_RW | CTLFLAG_MPSAFE, NULL,
217 smr_lazy_advance(smr_t smr, smr_shared_t s) in smr_lazy_advance() argument
271 smr_default_advance(smr_t smr, smr_shared_t s) in smr_default_advance() argument
276 KASSERT((zpcpu_get(smr)->c_flags & SMR_LAZY) == 0, in smr_default_advance()
293 smr_wait(smr, goal - SMR_SEQ_MAX_ADVANCE); in smr_default_advance()
305 smr_deferred_advance(smr_t smr, smr_shared_t s, smr_t self) in smr_deferred_advance() argument
311 return (smr_default_advance(smr, s)); in smr_deferred_advance()
328 smr_advance(smr_t smr) in smr_advance() argument
338 SMR_ASSERT_NOT_ENTERED(smr); in smr_advance()
348 self = zpcpu_get(smr); in smr_advance()
353 goal = smr_default_advance(smr, s); in smr_advance()
355 goal = smr_lazy_advance(smr, s); in smr_advance()
357 goal = smr_deferred_advance(smr, s, self); in smr_advance()
419 smr_poll_scan(smr_t smr, smr_shared_t s, smr_seq_t s_rd_seq, in smr_poll_scan() argument
440 c_seq = smr_poll_cpu(zpcpu_get_cpu(smr, i), s_rd_seq, goal, in smr_poll_scan()
476 smr_poll(smr_t smr, smr_seq_t goal, bool wait) in smr_poll() argument
488 KASSERT(!wait || !SMR_ENTERED(smr), in smr_poll()
490 KASSERT(!wait || (zpcpu_get(smr)->c_flags & SMR_LAZY) == 0, in smr_poll()
500 self = zpcpu_get(smr); in smr_poll()
510 smr_lazy_advance(smr, s); in smr_poll()
567 s_rd_seq = smr_poll_scan(smr, s, s_rd_seq, s_wr_seq, goal, wait); in smr_poll()
587 smr_t smr, c; in smr_create() local
592 smr = uma_zalloc_pcpu(smr_zone, M_WAITOK); in smr_create()
600 c = zpcpu_get_cpu(smr, i); in smr_create()
609 return (smr); in smr_create()
613 smr_destroy(smr_t smr) in smr_destroy() argument
616 smr_synchronize(smr); in smr_destroy()
617 uma_zfree(smr_shared_zone, smr->c_shared); in smr_destroy()
618 uma_zfree_pcpu(smr_zone, smr); in smr_destroy()
630 smr_zone = uma_zcreate("SMR CPU", sizeof(struct smr), in smr_init()