pcpu_pre_unmap_flush(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… pcpu_pre_unmap_flush(9) πŸ’…

okay bestie, welcome to the Kernel API Manual page for pcpu_pre_unmap_flush(9) β€” yes, that's the whole title vibe, and we're gonna get you comfy with it 🫢✨

🌸 NAME 🌸

pcpu_pre_unmap_flush β€” flush cache prior to unmapping. no cap, that's the whole point πŸ’–

✨ SYNOPSIS ✨

void pcpu_pre_unmap_flush (struct pcpu_chunk *chunk , int page_start , int page_end );

πŸŽ€ ARGUMENTS πŸŽ€

  • chunk β€” the chunk that owns the regions we're about to flush, bestie.
  • page_start β€” page index of the first page to be flushed.
  • page_end β€” page index of the last page to be flushed + 1 (yes, plus one, that's the bit πŸ‘€).

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so picture it: pages in [page_start,page_end) of chunk are about to be unmapped. The move is to flush cache. And because each flushing trial can be very expensive, we issue flush on the whole region at once rather than doing it for each cpu. Yes, this could be an overkill, but it is more scalable β€” iconic behavior, honestly. πŸ’…

🌈 SEE ALSO 🌈

Kernel file ./mm/percpu-vm.c β€” that's where this lives, and the whole related squad is:


mwah πŸ’‹ β€” source ./mm, dated October 2026, and it's pcpu_pre_unmap_flush(9) from the Kernel API Manual, periodt. πŸŽ€

πŸ“¦ where this page comes from