Lines Matching refs:cpu
256 static int __maybe_unused pcpu_page_idx(unsigned int cpu, int page_idx) in pcpu_page_idx() argument
258 return pcpu_unit_map[cpu] * pcpu_unit_pages + page_idx; in pcpu_page_idx()
261 static unsigned long pcpu_unit_page_offset(unsigned int cpu, int page_idx) in pcpu_unit_page_offset() argument
263 return pcpu_unit_offsets[cpu] + (page_idx << PAGE_SHIFT); in pcpu_unit_page_offset()
267 unsigned int cpu, int page_idx) in pcpu_chunk_addr() argument
270 pcpu_unit_page_offset(cpu, page_idx); in pcpu_chunk_addr()
1596 int slot, off, cpu, ret; in pcpu_alloc() local
1733 for_each_possible_cpu(cpu) in pcpu_alloc()
1734 memset((void *)pcpu_chunk_addr(chunk, cpu, 0) + off, 0, size); in pcpu_alloc()
2002 unsigned int cpu; in __is_kernel_percpu_address() local
2004 for_each_possible_cpu(cpu) { in __is_kernel_percpu_address()
2005 void *start = per_cpu_ptr(base, cpu); in __is_kernel_percpu_address()
2066 unsigned int cpu; in per_cpu_ptr_to_phys() local
2084 for_each_possible_cpu(cpu) { in per_cpu_ptr_to_phys()
2085 void *start = per_cpu_ptr(base, cpu); in per_cpu_ptr_to_phys()
2280 unsigned int cpu; in pcpu_setup_first_chunk() local
2341 for (cpu = 0; cpu < nr_cpu_ids; cpu++) in pcpu_setup_first_chunk()
2342 unit_map[cpu] = UINT_MAX; in pcpu_setup_first_chunk()
2354 cpu = gi->cpu_map[i]; in pcpu_setup_first_chunk()
2355 if (cpu == NR_CPUS) in pcpu_setup_first_chunk()
2358 PCPU_SETUP_BUG_ON(cpu >= nr_cpu_ids); in pcpu_setup_first_chunk()
2359 PCPU_SETUP_BUG_ON(!cpu_possible(cpu)); in pcpu_setup_first_chunk()
2360 PCPU_SETUP_BUG_ON(unit_map[cpu] != UINT_MAX); in pcpu_setup_first_chunk()
2362 unit_map[cpu] = unit + i; in pcpu_setup_first_chunk()
2363 unit_off[cpu] = gi->base_offset + i * ai->unit_size; in pcpu_setup_first_chunk()
2367 unit_off[cpu] < unit_off[pcpu_low_unit_cpu]) in pcpu_setup_first_chunk()
2368 pcpu_low_unit_cpu = cpu; in pcpu_setup_first_chunk()
2370 unit_off[cpu] > unit_off[pcpu_high_unit_cpu]) in pcpu_setup_first_chunk()
2371 pcpu_high_unit_cpu = cpu; in pcpu_setup_first_chunk()
2376 for_each_possible_cpu(cpu) in pcpu_setup_first_chunk()
2377 PCPU_SETUP_BUG_ON(unit_map[cpu] == UINT_MAX); in pcpu_setup_first_chunk()
2541 unsigned int cpu, tcpu; in pcpu_build_alloc_info() local
2570 for_each_possible_cpu(cpu) { in pcpu_build_alloc_info()
2574 if (cpu == tcpu) in pcpu_build_alloc_info()
2577 (cpu_distance_fn(cpu, tcpu) > LOCAL_DISTANCE || in pcpu_build_alloc_info()
2578 cpu_distance_fn(tcpu, cpu) > LOCAL_DISTANCE)) { in pcpu_build_alloc_info()
2584 group_map[cpu] = group; in pcpu_build_alloc_info()
2653 for_each_possible_cpu(cpu) in pcpu_build_alloc_info()
2654 if (group_map[cpu] == group) in pcpu_build_alloc_info()
2655 gi->cpu_map[gi->nr_units++] = cpu; in pcpu_build_alloc_info()
2729 unsigned int cpu = NR_CPUS; in pcpu_embed_first_chunk() local
2732 for (i = 0; i < gi->nr_units && cpu == NR_CPUS; i++) in pcpu_embed_first_chunk()
2733 cpu = gi->cpu_map[i]; in pcpu_embed_first_chunk()
2734 BUG_ON(cpu == NR_CPUS); in pcpu_embed_first_chunk()
2737 ptr = alloc_fn(cpu, gi->nr_units * ai->unit_size, atom_size); in pcpu_embed_first_chunk()
2868 unsigned int cpu = ai->groups[0].cpu_map[unit]; in pcpu_page_first_chunk() local
2872 ptr = alloc_fn(cpu, PAGE_SIZE, PAGE_SIZE); in pcpu_page_first_chunk()
2875 psize_str, cpu); in pcpu_page_first_chunk()
2949 static void * __init pcpu_dfl_fc_alloc(unsigned int cpu, size_t size, in pcpu_dfl_fc_alloc() argument
2963 unsigned int cpu; in setup_per_cpu_areas() local
2977 for_each_possible_cpu(cpu) in setup_per_cpu_areas()
2978 __per_cpu_offset[cpu] = delta + pcpu_unit_offsets[cpu]; in setup_per_cpu_areas()