Symbol: V_tcp_syncache
sys/netinet/tcp_syncache.c
1435
cred = V_tcp_syncache.see_other ? NULL : crhold(so->so_cred);
sys/netinet/tcp_syncache.c
1617
sc = uma_zalloc(V_tcp_syncache.zone, M_NOWAIT | M_ZERO);
sys/netinet/tcp_syncache.c
1631
sc = uma_zalloc(V_tcp_syncache.zone, M_NOWAIT | M_ZERO);
sys/netinet/tcp_syncache.c
199
new = V_tcp_syncache.rexmt_limit;
sys/netinet/tcp_syncache.c
205
V_tcp_syncache.rexmt_limit = new;
sys/netinet/tcp_syncache.c
2281
secbit = V_tcp_syncache.secret.oddeven & 0x1;
sys/netinet/tcp_syncache.c
2284
secbits = V_tcp_syncache.secret.key[secbit];
sys/netinet/tcp_syncache.c
2326
secbits = V_tcp_syncache.secret.key[cookie.flags.odd_even];
sys/netinet/tcp_syncache.c
246
uma_zfree(V_tcp_syncache.zone, sc);
sys/netinet/tcp_syncache.c
2480
if (V_tcp_syncache.paused)
sys/netinet/tcp_syncache.c
2493
mtx_lock(&V_tcp_syncache.pause_mtx);
sys/netinet/tcp_syncache.c
2494
if (V_tcp_syncache.paused) {
sys/netinet/tcp_syncache.c
2495
mtx_unlock(&V_tcp_syncache.pause_mtx);
sys/netinet/tcp_syncache.c
2500
V_tcp_syncache.paused = true;
sys/netinet/tcp_syncache.c
2508
delta = TCP_SYNCACHE_PAUSE_TIME << V_tcp_syncache.pause_backoff;
sys/netinet/tcp_syncache.c
2509
if (V_tcp_syncache.pause_until + delta - time_uptime > 0) {
sys/netinet/tcp_syncache.c
2510
if (V_tcp_syncache.pause_backoff < TCP_SYNCACHE_MAX_BACKOFF) {
sys/netinet/tcp_syncache.c
2512
V_tcp_syncache.pause_backoff++;
sys/netinet/tcp_syncache.c
2516
V_tcp_syncache.pause_backoff = 0;
sys/netinet/tcp_syncache.c
2531
V_tcp_syncache.pause_until = time_uptime + delta;
sys/netinet/tcp_syncache.c
2532
callout_reset(&V_tcp_syncache.pause_co, delta * hz, syncache_unpause,
sys/netinet/tcp_syncache.c
2533
&V_tcp_syncache);
sys/netinet/tcp_syncache.c
2534
mtx_unlock(&V_tcp_syncache.pause_mtx);
sys/netinet/tcp_syncache.c
254
V_tcp_syncache.hashsize = TCP_SYNCACHE_HASHSIZE;
sys/netinet/tcp_syncache.c
255
V_tcp_syncache.bucket_limit = TCP_SYNCACHE_BUCKETLIMIT;
sys/netinet/tcp_syncache.c
256
V_tcp_syncache.rexmt_limit = SYNCACHE_MAXREXMTS;
sys/netinet/tcp_syncache.c
257
V_tcp_syncache.hash_secret = arc4random();
sys/netinet/tcp_syncache.c
2583
for (i = 0; i < V_tcp_syncache.hashsize; i++) {
sys/netinet/tcp_syncache.c
2584
sch = &V_tcp_syncache.hashbase[i];
sys/netinet/tcp_syncache.c
260
&V_tcp_syncache.hashsize);
sys/netinet/tcp_syncache.c
262
&V_tcp_syncache.bucket_limit);
sys/netinet/tcp_syncache.c
263
if (!powerof2(V_tcp_syncache.hashsize) ||
sys/netinet/tcp_syncache.c
264
V_tcp_syncache.hashsize == 0) {
sys/netinet/tcp_syncache.c
266
V_tcp_syncache.hashsize = TCP_SYNCACHE_HASHSIZE;
sys/netinet/tcp_syncache.c
268
V_tcp_syncache.hashmask = V_tcp_syncache.hashsize - 1;
sys/netinet/tcp_syncache.c
271
V_tcp_syncache.cache_limit =
sys/netinet/tcp_syncache.c
272
V_tcp_syncache.hashsize * V_tcp_syncache.bucket_limit;
sys/netinet/tcp_syncache.c
274
&V_tcp_syncache.cache_limit);
sys/netinet/tcp_syncache.c
277
V_tcp_syncache.hashbase = malloc(V_tcp_syncache.hashsize *
sys/netinet/tcp_syncache.c
281
V_tcp_syncache.vnet = curvnet;
sys/netinet/tcp_syncache.c
285
for (i = 0; i < V_tcp_syncache.hashsize; i++) {
sys/netinet/tcp_syncache.c
286
TAILQ_INIT(&V_tcp_syncache.hashbase[i].sch_bucket);
sys/netinet/tcp_syncache.c
287
mtx_init(&V_tcp_syncache.hashbase[i].sch_mtx, "tcp_sc_head",
sys/netinet/tcp_syncache.c
289
callout_init_mtx(&V_tcp_syncache.hashbase[i].sch_timer,
sys/netinet/tcp_syncache.c
290
&V_tcp_syncache.hashbase[i].sch_mtx, 0);
sys/netinet/tcp_syncache.c
291
V_tcp_syncache.hashbase[i].sch_length = 0;
sys/netinet/tcp_syncache.c
292
V_tcp_syncache.hashbase[i].sch_sc = &V_tcp_syncache;
sys/netinet/tcp_syncache.c
293
V_tcp_syncache.hashbase[i].sch_last_overflow =
sys/netinet/tcp_syncache.c
298
V_tcp_syncache.zone = uma_zcreate("syncache", sizeof(struct syncache),
sys/netinet/tcp_syncache.c
300
V_tcp_syncache.cache_limit = uma_zone_set_max(V_tcp_syncache.zone,
sys/netinet/tcp_syncache.c
301
V_tcp_syncache.cache_limit);
sys/netinet/tcp_syncache.c
304
callout_init(&V_tcp_syncache.secret.reseed, 1);
sys/netinet/tcp_syncache.c
305
arc4rand(V_tcp_syncache.secret.key[0], SYNCOOKIE_SECRET_SIZE, 0);
sys/netinet/tcp_syncache.c
306
arc4rand(V_tcp_syncache.secret.key[1], SYNCOOKIE_SECRET_SIZE, 0);
sys/netinet/tcp_syncache.c
307
callout_reset(&V_tcp_syncache.secret.reseed, SYNCOOKIE_LIFETIME * hz,
sys/netinet/tcp_syncache.c
308
syncookie_reseed, &V_tcp_syncache);
sys/netinet/tcp_syncache.c
311
mtx_init(&V_tcp_syncache.pause_mtx, "tcp_sc_pause", NULL, MTX_DEF);
sys/netinet/tcp_syncache.c
312
callout_init_mtx(&V_tcp_syncache.pause_co, &V_tcp_syncache.pause_mtx,
sys/netinet/tcp_syncache.c
314
V_tcp_syncache.pause_until = time_uptime - TCP_SYNCACHE_PAUSE_TIME;
sys/netinet/tcp_syncache.c
315
V_tcp_syncache.pause_backoff = 0;
sys/netinet/tcp_syncache.c
316
V_tcp_syncache.paused = false;
sys/netinet/tcp_syncache.c
331
callout_drain(&V_tcp_syncache.secret.reseed);
sys/netinet/tcp_syncache.c
334
mtx_lock(&V_tcp_syncache.pause_mtx);
sys/netinet/tcp_syncache.c
335
if (callout_stop(&V_tcp_syncache.pause_co) == 0) {
sys/netinet/tcp_syncache.c
336
mtx_unlock(&V_tcp_syncache.pause_mtx);
sys/netinet/tcp_syncache.c
337
callout_drain(&V_tcp_syncache.pause_co);
sys/netinet/tcp_syncache.c
339
mtx_unlock(&V_tcp_syncache.pause_mtx);
sys/netinet/tcp_syncache.c
342
for (i = 0; i < V_tcp_syncache.hashsize; i++) {
sys/netinet/tcp_syncache.c
343
sch = &V_tcp_syncache.hashbase[i];
sys/netinet/tcp_syncache.c
357
KASSERT(uma_zone_get_cur(V_tcp_syncache.zone) == 0,
sys/netinet/tcp_syncache.c
361
uma_zdestroy(V_tcp_syncache.zone);
sys/netinet/tcp_syncache.c
362
free(V_tcp_syncache.hashbase, M_SYNCACHE);
sys/netinet/tcp_syncache.c
363
mtx_destroy(&V_tcp_syncache.pause_mtx);
sys/netinet/tcp_syncache.c
382
if (sch->sch_length >= V_tcp_syncache.bucket_limit) {
sys/netinet/tcp_syncache.c
493
mtx_lock(&V_tcp_syncache.pause_mtx);
sys/netinet/tcp_syncache.c
494
paused = V_tcp_syncache.paused;
sys/netinet/tcp_syncache.c
495
mtx_unlock(&V_tcp_syncache.pause_mtx);
sys/netinet/tcp_syncache.c
518
if (sc->sc_rxmits > V_tcp_syncache.rexmt_limit) {
sys/netinet/tcp_syncache.c
566
return ((V_tcp_syncookies && V_tcp_syncache.paused) ||
sys/netinet/tcp_syncache.c
586
V_tcp_syncache.hash_secret) & V_tcp_syncache.hashmask;
sys/netinet/tcp_syncache.c
588
return (&V_tcp_syncache.hashbase[hash]);