pcpu_chunk_refresh_hint(9)
πΈ NAME πΈ
okay so bestie, welcome to the Kernel API Manual π
β this page is all about pcpu_chunk_refresh_hint, and what it does is updates metadata about a chunk. that's the whole vibe. it keeps the chunk's bookkeeping cute and current β¨
π¦ SYNOPSIS π¦
void pcpu_chunk_refresh_hint (struct pcpu_chunk *chunk , bool full_scan );
π ARGUMENTS π
chunkβ the chunk of interest π like, the one we're looking at, bestiefull_scanβ tells us if we should scan from the beginning π
π DESCRIPTION π
so what it does is iterate over the metadata blocks to find the largest contig area β the biggest contiguous stretch, no cap π§
here's the tea: a full scan can be avoided on the allocation path, because this gets triggered if we broke the contig_hint. when that happens, the scan_hint will be before the contig_hint, or after it if the scan_hint == contig_hint π«Ά
and ngl? this cannot be prevented on freeing, because when we're freeing we wanna find the largest area possibly spanning blocks. that's the whole point, periodt πβ¨
π SEE ALSO π
- Kernel file
./mm/percpu.c pcpu_addr_in_chunk(9)pcpu_check_block_hint(9)pcpu_next_md_free_region(9)pcpu_next_fit_region(9)pcpu_mem_zalloc(9)pcpu_mem_free(9)pcpu_chunk_relocate(9)pcpu_block_update(9)pcpu_block_refresh_hint(9)pcpu_block_update_hint_alloc(9)pcpu_block_update_hint_free(9)pcpu_is_populated(9)pcpu_find_block_fit(9)pcpu_alloc_area(9)pcpu_free_area(9)pcpu_alloc_first_chunk(9)pcpu_chunk_populated(9)pcpu_chunk_depopulated(9)pcpu_chunk_addr_search(9)pcpu_alloc(9)pcpu_balance_free(9)pcpu_balance_populated(9)pcpu_reclaim_populated(9)pcpu_balance_workfn(9)free_percpu(9)is_kernel_percpu_address(9)per_cpu_ptr_to_phys(9)pcpu_alloc_alloc_info(9)pcpu_free_alloc_info(9)pcpu_dump_alloc_info(9)pcpu_setup_first_chunk(9)pcpu_build_alloc_info(9)pcpu_embed_first_chunk(9)pcpu_page_first_chunk(9)
and that's a wrap, bestie π this page lives in ./mm, dated October 2026, and the whole thing is pcpu_chunk_refresh_hint(9) β mwah, slay, go read your percpu docs ππ₯
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms