Lines Matching refs:dccp_hashinfo

48 struct inet_hashinfo dccp_hashinfo;  variable
49 EXPORT_SYMBOL_GPL(dccp_hashinfo);
1131 rc = inet_hashinfo2_init_mod(&dccp_hashinfo); in dccp_init()
1135 dccp_hashinfo.bind_bucket_cachep = in dccp_init()
1139 if (!dccp_hashinfo.bind_bucket_cachep) in dccp_init()
1141 dccp_hashinfo.bind2_bucket_cachep = in dccp_init()
1145 if (!dccp_hashinfo.bind2_bucket_cachep) in dccp_init()
1170 dccp_hashinfo.ehash_mask = hash_size - 1; in dccp_init()
1171 dccp_hashinfo.ehash = (struct inet_ehash_bucket *) in dccp_init()
1173 } while (!dccp_hashinfo.ehash && --ehash_order > 0); in dccp_init()
1175 if (!dccp_hashinfo.ehash) { in dccp_init()
1180 for (i = 0; i <= dccp_hashinfo.ehash_mask; i++) in dccp_init()
1181 INIT_HLIST_NULLS_HEAD(&dccp_hashinfo.ehash[i].chain, i); in dccp_init()
1183 if (inet_ehash_locks_alloc(&dccp_hashinfo)) in dccp_init()
1189 dccp_hashinfo.bhash_size = (1UL << bhash_order) * PAGE_SIZE / in dccp_init()
1191 if ((dccp_hashinfo.bhash_size > (64 * 1024)) && in dccp_init()
1194 dccp_hashinfo.bhash = (struct inet_bind_hashbucket *) in dccp_init()
1196 } while (!dccp_hashinfo.bhash && --bhash_order >= 0); in dccp_init()
1198 if (!dccp_hashinfo.bhash) { in dccp_init()
1203 dccp_hashinfo.bhash2 = (struct inet_bind_hashbucket *) in dccp_init()
1206 if (!dccp_hashinfo.bhash2) { in dccp_init()
1211 for (i = 0; i < dccp_hashinfo.bhash_size; i++) { in dccp_init()
1212 spin_lock_init(&dccp_hashinfo.bhash[i].lock); in dccp_init()
1213 INIT_HLIST_HEAD(&dccp_hashinfo.bhash[i].chain); in dccp_init()
1214 spin_lock_init(&dccp_hashinfo.bhash2[i].lock); in dccp_init()
1215 INIT_HLIST_HEAD(&dccp_hashinfo.bhash2[i].chain); in dccp_init()
1218 dccp_hashinfo.pernet = false; in dccp_init()
1247 free_pages((unsigned long)dccp_hashinfo.bhash2, bhash_order); in dccp_init()
1249 free_pages((unsigned long)dccp_hashinfo.bhash, bhash_order); in dccp_init()
1251 inet_ehash_locks_free(&dccp_hashinfo); in dccp_init()
1253 free_pages((unsigned long)dccp_hashinfo.ehash, ehash_order); in dccp_init()
1255 kmem_cache_destroy(dccp_hashinfo.bind2_bucket_cachep); in dccp_init()
1257 kmem_cache_destroy(dccp_hashinfo.bind_bucket_cachep); in dccp_init()
1259 inet_hashinfo2_free_mod(&dccp_hashinfo); in dccp_init()
1261 dccp_hashinfo.bhash = NULL; in dccp_init()
1262 dccp_hashinfo.bhash2 = NULL; in dccp_init()
1263 dccp_hashinfo.ehash = NULL; in dccp_init()
1264 dccp_hashinfo.bind_bucket_cachep = NULL; in dccp_init()
1265 dccp_hashinfo.bind2_bucket_cachep = NULL; in dccp_init()
1271 int bhash_order = get_order(dccp_hashinfo.bhash_size * in dccp_fini()
1276 free_pages((unsigned long)dccp_hashinfo.bhash, bhash_order); in dccp_fini()
1277 free_pages((unsigned long)dccp_hashinfo.bhash2, bhash_order); in dccp_fini()
1278 free_pages((unsigned long)dccp_hashinfo.ehash, in dccp_fini()
1279 get_order((dccp_hashinfo.ehash_mask + 1) * in dccp_fini()
1281 inet_ehash_locks_free(&dccp_hashinfo); in dccp_fini()
1282 kmem_cache_destroy(dccp_hashinfo.bind_bucket_cachep); in dccp_fini()
1285 inet_hashinfo2_free_mod(&dccp_hashinfo); in dccp_fini()