xe_ggtt_largest_hole(9)
πΈ xe_ggtt_largest_hole(9) β from the Kernel API Manual π
okay bestie, gather round, because we're about to find the biggest hole in the Global Graphics Translation Table and honestly? iconic behavior. this page lives in the Kernel API Manual (section 9, very official, very demure) and it's all about one little function that goes looking for the largest continuous stretch of GGTT real estate. no cap, it's giving "find the biggest empty parking spot in the lot" energy. π
β¨ NAME β¨
xe_ggtt_largest_hole β literally: Largest GGTT hole. that's it, that's the whole name, and she ate. π
π¦ SYNOPSIS π¦
u64 xe_ggtt_largest_hole (struct xe_ggtt *ggtt , u64 alignment , u64
*spare );
like, look at her. three params, one u64 return, zero notes. main character function behavior only. π
π ARGUMENTS π
ggttβ thestruct xe_ggttthat will be inspected π like, this is the thing we're snooping through. it's the GGTT in question, the one getting the vibe check.alignmentβ minimum alignment π the smallest alignment you'll accept for the hole, so we're not out here accepting some off-grid nonsense.spareβ if notNULL: in: desired memory size to be spared / out: Adjusted possible spare π«Ά so it's a two-way street, bestie β you tell it how much you want to spare going in, and it tells you the adjusted possible spare coming out. it's giving "input/output param" and honestly we love a multitasker. if you passNULL, well, that's on you, no spare info for you.
β RETURN β
the size of the largest continuous GGTT region π₯ that's the whole return value. biggest. continuous. region. periodt. π
π§ SEE ALSO π§
so there's kind of a whole friend group here, and we are not leaving anyone out β every single one of these gets their moment:
- the kernel file
./drivers/gpu/drm/xe/xe_ggtt.c - Global Graphics Translation Table (GGTT)(9)
struct xe_ggtt_node(9)struct xe_ggtt_pt_ops(9)struct xe_ggtt(9)xe_ggtt_start(9)xe_ggtt_size(9)xe_ggtt_alloc(9)xe_ggtt_init_early(9)xe_ggtt_node_remove(9)xe_ggtt_init(9)xe_ggtt_shift_nodes(9)xe_ggtt_insert_node(9)xe_ggtt_node_pt_size(9)xe_ggtt_map_bo(9)xe_ggtt_map_bo_unlocked(9)xe_ggtt_insert_node_transform(9)xe_ggtt_insert_bo_at(9)xe_ggtt_insert_bo(9)xe_ggtt_remove_bo(9)xe_ggtt_assign(9)xe_ggtt_node_save(9)xe_ggtt_node_load(9)xe_ggtt_dump(9)xe_ggtt_print_holes(9)xe_ggtt_encode_pte_flags(9)xe_ggtt_read_pte(9)xe_ggtt_node_addr(9)xe_ggtt_node_size(9)
like, the whole squad. the entire group chat. iykyk π
β οΈ friendly reminder bestie: everything above is straight from the page, no invented lore, no extra tips, no guessing at behavior. we keep the facts exactly as they are and just serve them with better lighting. π
and that's the page!! π brought to you by the source ./drivers/gpu/drm/xe, dated October 2026, and filed under xe_ggtt_largest_hole(9) β mwah, slay, go find that largest hole bestie, you've got this π«Άβ¨π
π¦ 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