Symbol: smr
sys/dev/iwi/if_iwireg.h
458
uint8_t smr;
sys/dev/wg/wg_noise.c
468
noise_remote_smr_free(struct epoch_context *smr)
sys/dev/wg/wg_noise.c
471
r = __containerof(smr, struct noise_remote, r_smr);
sys/dev/wg/wg_noise.c
752
noise_keypair_smr_free(struct epoch_context *smr)
sys/dev/wg/wg_noise.c
755
kp = __containerof(smr, struct noise_keypair, kp_smr);
sys/kern/subr_pctrie.c
117
pctrie_node_load(smr_pctnode_t *p, smr_t smr, enum pctrie_access access)
sys/kern/subr_pctrie.c
125
return (smr_entered_load(p, smr));
sys/kern/subr_pctrie.c
162
pctrie_root_load(struct pctrie *ptree, smr_t smr, enum pctrie_access access)
sys/kern/subr_pctrie.c
164
return (pctrie_node_load(pctrie_root(ptree), smr, access));
sys/kern/subr_pctrie.c
292
smr_t smr, enum pctrie_access access)
sys/kern/subr_pctrie.c
299
node = pctrie_root_load(ptree, smr, access);
sys/kern/subr_pctrie.c
319
node = pctrie_node_load(&node->pn_child[slot], smr, access);
sys/kern/subr_pctrie.c
347
pctrie_lookup_unlocked(struct pctrie *ptree, uint64_t index, smr_t smr)
sys/kern/subr_pctrie.c
352
smr_enter(smr);
sys/kern/subr_pctrie.c
353
node = _pctrie_lookup_node(ptree, NULL, index, &parent, smr,
sys/kern/subr_pctrie.c
356
smr_exit(smr);
sys/kern/subr_pctrie.c
566
struct pctrie_node **parent_out, smr_t smr, enum pctrie_access access)
sys/kern/subr_pctrie.c
575
smr, access);
sys/kern/subr_pctrie.c
605
smr, access);
sys/kern/subr_pctrie.c
648
uint64_t *value[], int count, smr_t smr)
sys/kern/subr_pctrie.c
652
smr_enter(smr);
sys/kern/subr_pctrie.c
654
smr, PCTRIE_SMR);
sys/kern/subr_pctrie.c
655
smr_exit(smr);
sys/kern/subr_smr.c
196
static SYSCTL_NODE(_debug, OID_AUTO, smr, CTLFLAG_RW | CTLFLAG_MPSAFE, NULL,
sys/kern/subr_smr.c
216
smr_lazy_advance(smr_t smr, smr_shared_t s)
sys/kern/subr_smr.c
270
smr_default_advance(smr_t smr, smr_shared_t s)
sys/kern/subr_smr.c
275
KASSERT((zpcpu_get(smr)->c_flags & SMR_LAZY) == 0,
sys/kern/subr_smr.c
292
smr_wait(smr, goal - SMR_SEQ_MAX_ADVANCE);
sys/kern/subr_smr.c
304
smr_deferred_advance(smr_t smr, smr_shared_t s, smr_t self)
sys/kern/subr_smr.c
310
return (smr_default_advance(smr, s));
sys/kern/subr_smr.c
327
smr_advance(smr_t smr)
sys/kern/subr_smr.c
337
SMR_ASSERT_NOT_ENTERED(smr);
sys/kern/subr_smr.c
347
self = zpcpu_get(smr);
sys/kern/subr_smr.c
352
goal = smr_default_advance(smr, s);
sys/kern/subr_smr.c
354
goal = smr_lazy_advance(smr, s);
sys/kern/subr_smr.c
356
goal = smr_deferred_advance(smr, s, self);
sys/kern/subr_smr.c
418
smr_poll_scan(smr_t smr, smr_shared_t s, smr_seq_t s_rd_seq,
sys/kern/subr_smr.c
439
c_seq = smr_poll_cpu(zpcpu_get_cpu(smr, i), s_rd_seq, goal,
sys/kern/subr_smr.c
475
smr_poll(smr_t smr, smr_seq_t goal, bool wait)
sys/kern/subr_smr.c
487
KASSERT(!wait || !SMR_ENTERED(smr),
sys/kern/subr_smr.c
489
KASSERT(!wait || (zpcpu_get(smr)->c_flags & SMR_LAZY) == 0,
sys/kern/subr_smr.c
499
self = zpcpu_get(smr);
sys/kern/subr_smr.c
509
smr_lazy_advance(smr, s);
sys/kern/subr_smr.c
566
s_rd_seq = smr_poll_scan(smr, s, s_rd_seq, s_wr_seq, goal, wait);
sys/kern/subr_smr.c
586
smr_t smr, c;
sys/kern/subr_smr.c
591
smr = uma_zalloc_pcpu(smr_zone, M_WAITOK);
sys/kern/subr_smr.c
599
c = zpcpu_get_cpu(smr, i);
sys/kern/subr_smr.c
608
return (smr);
sys/kern/subr_smr.c
612
smr_destroy(smr_t smr)
sys/kern/subr_smr.c
615
smr_synchronize(smr);
sys/kern/subr_smr.c
616
uma_zfree(smr_shared_zone, smr->c_shared);
sys/kern/subr_smr.c
617
uma_zfree_pcpu(smr_zone, smr);
sys/kern/subr_smr.c
629
smr_zone = uma_zcreate("SMR CPU", sizeof(struct smr),
sys/netinet/tcp_hostcache.c
124
smr_t smr;
sys/netinet/tcp_hostcache.c
280
V_tcp_hostcache.smr = uma_zone_get_smr(V_tcp_hostcache.zone);
sys/netinet/tcp_hostcache.c
348
smr_enter(V_tcp_hostcache.smr);
sys/netinet/tcp_hostcache.c
362
smr_exit(V_tcp_hostcache.smr);
sys/netinet/tcp_hostcache.c
404
smr_exit(V_tcp_hostcache.smr);
sys/netinet/tcp_hostcache.c
427
smr_exit(V_tcp_hostcache.smr);
sys/sys/_smr.h
34
typedef struct smr *smr_t;
sys/sys/_smr.h
36
#define SMR_ENTERED(smr) \
sys/sys/_smr.h
37
(curthread->td_critnest != 0 && zpcpu_get((smr))->c_seq != SMR_SEQ_INVALID)
sys/sys/_smr.h
39
#define SMR_ASSERT_ENTERED(smr) \
sys/sys/_smr.h
40
KASSERT(SMR_ENTERED(smr), ("Not in smr section"))
sys/sys/_smr.h
42
#define SMR_ASSERT_NOT_ENTERED(smr) \
sys/sys/_smr.h
43
KASSERT(!SMR_ENTERED(smr), ("In smr section."));
sys/sys/pctrie.h
410
smr_t smr);
sys/sys/pctrie.h
414
uint64_t index, uint64_t *value[], int count, smr_t smr);
sys/sys/pctrie.h
76
#define PCTRIE_DEFINE_SMR(name, type, field, allocfn, freefn, smr) \
sys/sys/pctrie.h
84
key, (smr))); \
sys/sys/pctrie.h
94
(smr)); \
sys/sys/smr.h
106
smr_enter(smr_t smr)
sys/sys/smr.h
110
smr = zpcpu_get(smr);
sys/sys/smr.h
111
KASSERT((smr->c_flags & SMR_LAZY) == 0,
sys/sys/smr.h
112
("smr_enter(%s) lazy smr.", smr->c_shared->s_name));
sys/sys/smr.h
113
KASSERT(smr->c_seq == 0,
sys/sys/smr.h
115
smr->c_shared->s_name));
sys/sys/smr.h
138
atomic_add_acq_int(&smr->c_seq, smr_shared_current(smr->c_shared));
sys/sys/smr.h
140
atomic_store_int(&smr->c_seq, smr_shared_current(smr->c_shared));
sys/sys/smr.h
149
smr_exit(smr_t smr)
sys/sys/smr.h
152
smr = zpcpu_get(smr);
sys/sys/smr.h
154
KASSERT((smr->c_flags & SMR_LAZY) == 0,
sys/sys/smr.h
155
("smr_exit(%s) lazy smr.", smr->c_shared->s_name));
sys/sys/smr.h
156
KASSERT(smr->c_seq != SMR_SEQ_INVALID,
sys/sys/smr.h
157
("smr_exit(%s) not in a smr section.", smr->c_shared->s_name));
sys/sys/smr.h
166
atomic_store_rel_int(&smr->c_seq, SMR_SEQ_INVALID);
sys/sys/smr.h
175
smr_lazy_enter(smr_t smr)
sys/sys/smr.h
179
smr = zpcpu_get(smr);
sys/sys/smr.h
180
KASSERT((smr->c_flags & SMR_LAZY) != 0,
sys/sys/smr.h
181
("smr_lazy_enter(%s) non-lazy smr.", smr->c_shared->s_name));
sys/sys/smr.h
182
KASSERT(smr->c_seq == 0,
sys/sys/smr.h
184
smr->c_shared->s_name));
sys/sys/smr.h
192
atomic_store_int(&smr->c_seq, smr_shared_current(smr->c_shared));
sys/sys/smr.h
200
smr_lazy_exit(smr_t smr)
sys/sys/smr.h
203
smr = zpcpu_get(smr);
sys/sys/smr.h
205
KASSERT((smr->c_flags & SMR_LAZY) != 0,
sys/sys/smr.h
206
("smr_lazy_enter(%s) non-lazy smr.", smr->c_shared->s_name));
sys/sys/smr.h
207
KASSERT(smr->c_seq != SMR_SEQ_INVALID,
sys/sys/smr.h
208
("smr_lazy_exit(%s) not in a smr section.", smr->c_shared->s_name));
sys/sys/smr.h
217
atomic_store_int(&smr->c_seq, SMR_SEQ_INVALID);
sys/sys/smr.h
225
smr_seq_t smr_advance(smr_t smr);
sys/sys/smr.h
231
bool smr_poll(smr_t smr, smr_seq_t goal, bool wait);
sys/sys/smr.h
237
void smr_destroy(smr_t smr);
sys/sys/smr.h
243
smr_wait(smr_t smr, smr_seq_t goal)
sys/sys/smr.h
246
(void)smr_poll(smr, goal, true);
sys/sys/smr.h
258
smr_synchronize(smr_t smr)
sys/sys/smr.h
261
smr_wait(smr, smr_advance(smr));
sys/sys/smr.h
96
smr_current(smr_t smr)
sys/sys/smr.h
99
return (smr_shared_current(zpcpu_get(smr)->c_shared));
sys/sys/smr_types.h
61
#define smr_entered_load(p, smr) ({ \
sys/sys/smr_types.h
62
SMR_ASSERT(SMR_ENTERED((smr)), "smr_entered_load"); \
sys/vm/uma.h
637
void uma_zone_set_smr(uma_zone_t zone, smr_t smr);
sys/vm/uma_core.c
5152
uma_zone_set_smr(uma_zone_t zone, smr_t smr)
sys/vm/uma_core.c
5157
KASSERT(smr != NULL, ("Got NULL smr"));
sys/vm/uma_core.c
5161
zone->uz_smr = smr;