Lines Matching refs:uint16_t
699 TUNABLE(uint16_t, kt_zone_budget, "kt_zbudget", KT_ZBUDGET);
731 uint16_t idx; in kalloc_idx_for_size()
750 kalloc_heap_zone_for_idx(kalloc_heap_t kheap, uint16_t zindex) in kalloc_heap_zone_for_idx()
833 uint16_t kt_idx = kalloc_type_get_idx(cur->kt_size); in kalloc_type_view_copy()
1015 const uint16_t idxA = kalloc_type_get_idx(ktA->kt_size); in kalloc_type_cmp()
1016 const uint16_t idxB = kalloc_type_get_idx(ktB->kt_size); in kalloc_type_cmp()
1037 static uint16_t *
1038 kalloc_type_create_iterators(uint16_t *kt_skip_list_start, in kalloc_type_create_iterators()
1039 uint16_t *kt_freq_list, uint16_t *kt_freq_list_total, uint64_t count) in kalloc_type_create_iterators()
1041 uint16_t *kt_skip_list = kt_skip_list_start; in kalloc_type_create_iterators()
1045 uint16_t p_idx = 0; in kalloc_type_create_iterators()
1046 uint16_t c_idx = 0; in kalloc_type_create_iterators()
1051 uint16_t unique_sig = 1; in kalloc_type_create_iterators()
1052 uint16_t total_sig = 0; in kalloc_type_create_iterators()
1060 for (uint16_t i = 0; i < count; i++) { in kalloc_type_create_iterators()
1127 kt_freq_list_total[c_idx] = (uint16_t) total_sig; in kalloc_type_create_iterators()
1128 *kt_skip_list = (uint16_t) count; in kalloc_type_create_iterators()
1133 static uint16_t
1134 kalloc_type_apply_policy(uint16_t *kt_freq_list, uint16_t *kt_zones, in kalloc_type_apply_policy()
1135 uint16_t zone_budget) in kalloc_type_apply_policy()
1137 uint16_t total_sig = 0; in kalloc_type_apply_policy()
1138 uint16_t min_sig = 0; in kalloc_type_apply_policy()
1139 uint16_t assigned_zones = 0; in kalloc_type_apply_policy()
1140 uint16_t remaining_zones = zone_budget; in kalloc_type_apply_policy()
1141 uint16_t min_zones_per_size = 2; in kalloc_type_apply_policy()
1145 uint16_t current_zones = os_atomic_load(&num_zones, relaxed); in kalloc_type_apply_policy()
1150 for (uint16_t i = 0; i < MAX_K_ZONE(k_zone_cfg); i++) { in kalloc_type_apply_policy()
1151 uint16_t sig_freq = kt_freq_list[i]; in kalloc_type_apply_policy()
1152 uint16_t min_zones = min_zones_per_size; in kalloc_type_apply_policy()
1167 uint16_t modulo = 0; in kalloc_type_apply_policy()
1168 for (uint16_t i = 0; i < MAX_K_ZONE(k_zone_cfg); i++) { in kalloc_type_apply_policy()
1169 uint16_t freq = kt_freq_list[i]; in kalloc_type_apply_policy()
1174 uint16_t n_zones = (uint16_t) numer / total_sig; in kalloc_type_apply_policy()
1190 uint16_t extra_zones = n_zones + min_zones_per_size - freq; in kalloc_type_apply_policy()
1207 uint16_t kt_zones, vm_size_t z_size) in kalloc_type_create_zone_for_size()
1211 for (uint16_t i = 0; i < kt_zones; i++) { in kalloc_type_create_zone_for_size()
1233 static uint16_t
1234 kalloc_type_get_random(uint16_t upper_limit) in kalloc_type_get_random()
1241 uint16_t result = random_entropy & KT_ENTROPY_MASK; in kalloc_type_get_random()
1250 kalloc_type_shuffle(uint16_t *shuffle_buf, uint16_t count) in kalloc_type_shuffle()
1252 for (uint16_t i = 0; i < count; i++) { in kalloc_type_shuffle()
1253 uint16_t j = kalloc_type_get_random(i); in kalloc_type_shuffle()
1262 kalloc_type_create_zones(uint16_t *kt_skip_list_start, in kalloc_type_create_zones()
1263 uint16_t *kt_freq_list, uint16_t *kt_freq_list_total, in kalloc_type_create_zones()
1264 uint16_t *kt_shuffle_buf) in kalloc_type_create_zones()
1266 uint16_t *kt_skip_list = kt_skip_list_start; in kalloc_type_create_zones()
1267 uint16_t p_j = 0; in kalloc_type_create_zones()
1269 uint16_t kt_zones[MAX_K_ZONE(k_zone_cfg)] = {}; in kalloc_type_create_zones()
1273 (vm_address_t) kt_buffer) / sizeof(uint16_t); in kalloc_type_create_zones()
1293 for (uint16_t i = 0; i < MAX_K_ZONE(k_zone_cfg); i++) { in kalloc_type_create_zones()
1294 uint16_t n_unique_sig = kt_freq_list[i]; in kalloc_type_create_zones()
1296 uint16_t n_zones = kt_zones[i]; in kalloc_type_create_zones()
1333 for (uint16_t j = 0; j < n_unique_sig; j++) { in kalloc_type_create_zones()
1337 uint16_t shuffle_idx = kt_shuffle_buf[j]; in kalloc_type_create_zones()
1338 uint16_t cur = kt_skip_list[shuffle_idx + p_j]; in kalloc_type_create_zones()
1339 uint16_t end = kt_skip_list[shuffle_idx + p_j + 1]; in kalloc_type_create_zones()
1377 vm_size_t sig_slist_size = (size_t) kt_count * sizeof(uint16_t); in kalloc_type_view_init()
1393 uint16_t *kt_skip_list_start = (uint16_t *)(kt_buffer + kt_count); in kalloc_type_view_init()
1394 uint16_t kt_freq_list[MAX_K_ZONE(k_zone_cfg)] = { 0 }; in kalloc_type_view_init()
1395 uint16_t kt_freq_list_total[MAX_K_ZONE(k_zone_cfg)] = { 0 }; in kalloc_type_view_init()
1396 uint16_t *kt_shuffle_buf = kalloc_type_create_iterators( in kalloc_type_view_init()
2706 for (uint16_t i = 0; i < MAX_K_ZONE(k_zone_cfg); i++) { in kalloc_type_feature_on()
2731 uint16_t zone_budget = (uint16_t) in; in kalloc_type_test_policy()
2732 uint16_t max_bucket_freq = 25; in kalloc_type_test_policy()
2733 uint16_t freq_list[MAX_K_ZONE(k_zone_cfg)] = {}; in kalloc_type_test_policy()
2734 uint16_t zones_per_bucket[MAX_K_ZONE(k_zone_cfg)] = {}; in kalloc_type_test_policy()
2735 uint16_t random[MAX_K_ZONE(k_zone_cfg)]; in kalloc_type_test_policy()
2739 for (uint16_t i = 0; i < MAX_K_ZONE(k_zone_cfg); i++) { in kalloc_type_test_policy()
2742 uint16_t wasted_zone_budget = kalloc_type_apply_policy(freq_list, in kalloc_type_test_policy()
2757 uint16_t elem_size = z->z_elem_size; in kalloc_type_check_size()
2797 for (uint16_t i = 0; i < MAX_K_ZONE(k_zone_cfg); i++) { in run_kalloc_type_test()