iopt_area_split(9)
β¨ iopt_area_split β¨
okay bestie, welcome to the iopt_area_split(9) page, a genuine little kernel-API moment brought to you by the manual π
πΈ NAME πΈ
iopt_area_split β split an area into two parts at iova π
π¦ SYNOPSIS π¦
int iopt_area_split (struct iopt_area *area , unsigned long iova );
π ARGUMENTS π
areaβ the area you're about to split, bestie. this is the main character.iovaβ becomes the last of a new area β¨ like it's literally getting a whole new address and everything.
π₯ DESCRIPTION π₯
so the way that this works is: it splits an area into two π«Ά that's it, that's the whole vibe.
it's part of the VFIO compatibility situation, and its whole reason for existing is to allow poking a hole in the mapping π (yes, "poking a hole" is the actual energy here, no cap).
and here's the cute part β the two areas continue to point at the same iopt_pages, just with different starting bytes π so they're not copies, they're more like... siblings. same pages, different starting points. iconic.
β SEE ALSO β
kernel file ./drivers/iommu/iommufd/io_pagetable.c
iopt_map_user_pages(9)iopt_map_file_pages(9)iopt_unmap_iova(9)iopt_unfill_domain(9)iopt_fill_domain(9)
these are the friends in the group chat, go say hi π
and that's the page, bestie π it lives under ./drivers/iommu/iommufd and it's dated October 2026 β mwah, sending you off with a kiss from the kernel ππ§
π¦ 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