Symbol: V_tcp_hostcache
sys/netinet/tcp_hostcache.c
218
V_tcp_hostcache.hashsalt) & V_tcp_hostcache.hashmask) \
sys/netinet/tcp_hostcache.c
221
V_tcp_hostcache.hashsalt) & V_tcp_hostcache.hashmask)
sys/netinet/tcp_hostcache.c
235
atomic_store_int(&V_tcp_hostcache.cache_count, 0);
sys/netinet/tcp_hostcache.c
236
V_tcp_hostcache.hashsize = TCP_HOSTCACHE_HASHSIZE;
sys/netinet/tcp_hostcache.c
237
V_tcp_hostcache.bucket_limit = TCP_HOSTCACHE_BUCKETLIMIT;
sys/netinet/tcp_hostcache.c
238
V_tcp_hostcache.expire = TCP_HOSTCACHE_EXPIRE;
sys/netinet/tcp_hostcache.c
239
V_tcp_hostcache.prune = TCP_HOSTCACHE_PRUNE;
sys/netinet/tcp_hostcache.c
240
V_tcp_hostcache.hashsalt = arc4random();
sys/netinet/tcp_hostcache.c
243
&V_tcp_hostcache.hashsize);
sys/netinet/tcp_hostcache.c
244
if (!powerof2(V_tcp_hostcache.hashsize)) {
sys/netinet/tcp_hostcache.c
246
V_tcp_hostcache.hashsize = TCP_HOSTCACHE_HASHSIZE; /* default */
sys/netinet/tcp_hostcache.c
248
V_tcp_hostcache.hashmask = V_tcp_hostcache.hashsize - 1;
sys/netinet/tcp_hostcache.c
251
&V_tcp_hostcache.bucket_limit);
sys/netinet/tcp_hostcache.c
253
cache_limit = V_tcp_hostcache.hashsize * V_tcp_hostcache.bucket_limit;
sys/netinet/tcp_hostcache.c
254
V_tcp_hostcache.cache_limit = cache_limit;
sys/netinet/tcp_hostcache.c
256
&V_tcp_hostcache.cache_limit);
sys/netinet/tcp_hostcache.c
257
if (V_tcp_hostcache.cache_limit > cache_limit)
sys/netinet/tcp_hostcache.c
258
V_tcp_hostcache.cache_limit = cache_limit;
sys/netinet/tcp_hostcache.c
263
V_tcp_hostcache.hashbase = (struct hc_head *)
sys/netinet/tcp_hostcache.c
264
malloc(V_tcp_hostcache.hashsize * sizeof(struct hc_head),
sys/netinet/tcp_hostcache.c
270
for (i = 0; i < V_tcp_hostcache.hashsize; i++) {
sys/netinet/tcp_hostcache.c
271
CK_SLIST_INIT(&V_tcp_hostcache.hashbase[i].hch_bucket);
sys/netinet/tcp_hostcache.c
272
V_tcp_hostcache.hashbase[i].hch_length = 0;
sys/netinet/tcp_hostcache.c
273
mtx_init(&V_tcp_hostcache.hashbase[i].hch_mtx, "tcp_hc_entry",
sys/netinet/tcp_hostcache.c
280
V_tcp_hostcache.zone =
sys/netinet/tcp_hostcache.c
283
uma_zone_set_max(V_tcp_hostcache.zone, V_tcp_hostcache.cache_limit);
sys/netinet/tcp_hostcache.c
284
V_tcp_hostcache.smr = uma_zone_get_smr(V_tcp_hostcache.zone);
sys/netinet/tcp_hostcache.c
290
callout_reset(&V_tcp_hc_callout, V_tcp_hostcache.prune * hz,
sys/netinet/tcp_hostcache.c
306
uma_zdestroy(V_tcp_hostcache.zone);
sys/netinet/tcp_hostcache.c
308
for (i = 0; i < V_tcp_hostcache.hashsize; i++)
sys/netinet/tcp_hostcache.c
309
mtx_destroy(&V_tcp_hostcache.hashbase[i].hch_mtx);
sys/netinet/tcp_hostcache.c
310
free(V_tcp_hostcache.hashbase, M_HOSTCACHE);
sys/netinet/tcp_hostcache.c
347
hc_head = &V_tcp_hostcache.hashbase[HOSTCACHE_HASH(inc)];
sys/netinet/tcp_hostcache.c
352
smr_enter(V_tcp_hostcache.smr);
sys/netinet/tcp_hostcache.c
359
V_tcp_hostcache.expire)
sys/netinet/tcp_hostcache.c
361
V_tcp_hostcache.expire);
sys/netinet/tcp_hostcache.c
366
smr_exit(V_tcp_hostcache.smr);
sys/netinet/tcp_hostcache.c
408
smr_exit(V_tcp_hostcache.smr);
sys/netinet/tcp_hostcache.c
431
smr_exit(V_tcp_hostcache.smr);
sys/netinet/tcp_hostcache.c
463
hc_head = &V_tcp_hostcache.hashbase[HOSTCACHE_HASH(inc)];
sys/netinet/tcp_hostcache.c
476
V_tcp_hostcache.expire)
sys/netinet/tcp_hostcache.c
478
V_tcp_hostcache.expire);
sys/netinet/tcp_hostcache.c
494
if (hc_head->hch_length >= V_tcp_hostcache.bucket_limit ||
sys/netinet/tcp_hostcache.c
495
atomic_load_int(&V_tcp_hostcache.cache_count) >=
sys/netinet/tcp_hostcache.c
496
V_tcp_hostcache.cache_limit) {
sys/netinet/tcp_hostcache.c
515
hc_head->hch_length <= V_tcp_hostcache.bucket_limit,
sys/netinet/tcp_hostcache.c
519
atomic_subtract_int(&V_tcp_hostcache.cache_count, 1);
sys/netinet/tcp_hostcache.c
521
uma_zfree_smr(V_tcp_hostcache.zone, hc_entry);
sys/netinet/tcp_hostcache.c
527
hc_entry = uma_zalloc_smr(V_tcp_hostcache.zone, M_NOWAIT);
sys/netinet/tcp_hostcache.c
542
hc_entry->hc_expire = V_tcp_hostcache.expire;
sys/netinet/tcp_hostcache.c
614
KASSERT(hc_head->hch_length <= V_tcp_hostcache.bucket_limit,
sys/netinet/tcp_hostcache.c
616
atomic_add_int(&V_tcp_hostcache.cache_count, 1);
sys/netinet/tcp_hostcache.c
635
expire = V_tcp_hostcache.expire;
sys/netinet/tcp_hostcache.c
639
if (expire < V_tcp_hostcache.prune)
sys/netinet/tcp_hostcache.c
640
V_tcp_hostcache.prune = expire;
sys/netinet/tcp_hostcache.c
641
V_tcp_hostcache.expire = expire;
sys/netinet/tcp_hostcache.c
653
prune = V_tcp_hostcache.prune;
sys/netinet/tcp_hostcache.c
657
if (prune > V_tcp_hostcache.expire)
sys/netinet/tcp_hostcache.c
658
V_tcp_hostcache.expire = prune;
sys/netinet/tcp_hostcache.c
659
V_tcp_hostcache.prune = prune;
sys/netinet/tcp_hostcache.c
660
callout_reset(&V_tcp_hc_callout, V_tcp_hostcache.prune * hz,
sys/netinet/tcp_hostcache.c
686
len = (atomic_load_int(&V_tcp_hostcache.cache_count) + 1) *
sys/netinet/tcp_hostcache.c
697
sbuf_new_for_sysctl(&sb, NULL, V_tcp_hostcache.bucket_limit *
sys/netinet/tcp_hostcache.c
710
for (i = 0; i < V_tcp_hostcache.hashsize; i++) {
sys/netinet/tcp_hostcache.c
711
THC_LOCK(&V_tcp_hostcache.hashbase[i]);
sys/netinet/tcp_hostcache.c
713
&V_tcp_hostcache.hashbase[i].hch_bucket, hc_q) {
sys/netinet/tcp_hostcache.c
742
THC_UNLOCK(&V_tcp_hostcache.hashbase[i]);
sys/netinet/tcp_hostcache.c
767
histo = (int *)malloc(sizeof(int) * (V_tcp_hostcache.bucket_limit + 1),
sys/netinet/tcp_hostcache.c
772
for (i = 0; i < V_tcp_hostcache.hashsize; i++) {
sys/netinet/tcp_hostcache.c
773
hch_length = V_tcp_hostcache.hashbase[i].hch_length;
sys/netinet/tcp_hostcache.c
774
KASSERT(hch_length <= V_tcp_hostcache.bucket_limit,
sys/netinet/tcp_hostcache.c
784
for (i = 0; i <= V_tcp_hostcache.bucket_limit; i++) {
sys/netinet/tcp_hostcache.c
803
for (i = 0; i < V_tcp_hostcache.hashsize; i++) {
sys/netinet/tcp_hostcache.c
804
head = &V_tcp_hostcache.hashbase[i];
sys/netinet/tcp_hostcache.c
810
V_tcp_hostcache.bucket_limit, ("tcp_hostcache: "
sys/netinet/tcp_hostcache.c
829
uma_zfree_smr(V_tcp_hostcache.zone, hc_entry);
sys/netinet/tcp_hostcache.c
831
atomic_subtract_int(&V_tcp_hostcache.cache_count, 1);
sys/netinet/tcp_hostcache.c
834
V_tcp_hostcache.prune);
sys/netinet/tcp_hostcache.c
852
if (V_tcp_hostcache.purgeall) {
sys/netinet/tcp_hostcache.c
853
if (V_tcp_hostcache.purgeall == 2)
sys/netinet/tcp_hostcache.c
854
V_tcp_hostcache.hashsalt = arc4random();
sys/netinet/tcp_hostcache.c
856
V_tcp_hostcache.purgeall = 0;
sys/netinet/tcp_hostcache.c
861
callout_reset(&V_tcp_hc_callout, V_tcp_hostcache.prune * hz,
sys/netinet/tcp_hostcache.c
880
V_tcp_hostcache.hashsalt = arc4random();
sys/netinet/tcp_hostcache.c
883
callout_reset(&V_tcp_hc_callout, V_tcp_hostcache.prune * hz,