hl_mmu_hr_fini(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ hl_mmu_hr_fini(9) ✨

okay bestie, welcome to the Kernel API Manual page for hl_mmu_hr_fini(9) β€” this is the one where we yeet the MMU module into the void πŸ’…


πŸ’– NAME πŸ’–

hl_mmu_hr_fini β€” release the MMU module. that's it, that's the vibe 🫢


πŸŽ€ SYNOPSIS πŸŽ€

void hl_mmu_hr_fini (struct hl_device *hdev , struct hl_mmu_hr_priv
*hr_priv , u32 hop_table_size );

copy it exactly, bestie, no autocorrect shenanigans πŸ™ˆ


🌸 ARGUMENTS 🌸

  • hdev β€” habanalabs device structure. like, the whole device, the main character πŸ‘‘
  • hr_priv β€” MMU host resident private info. its private business, respect it 🧚
  • hop_table_size β€” HOP table size. just the size, nothing more, nothing less ⭐

πŸ¦‹ DESCRIPTION πŸ¦‹

so this function does the following, and we're gonna go through it together:

  • Disable MMU in H/W. πŸ”₯
  • Free the pgt_infos pool. πŸ“
⚠️ heads up! All contexts should be freed before calling this function. seriously, all of them. don't come crying to me if you skip this step 😭

🌈 SEE ALSO 🌈

Kernel file ./drivers/accel/habanalabs/common/mmu/mmu.c β€” go read it, iykyk πŸ’œ

and the whole friend group:

hl_mmu_get_funcs(9), hl_mmu_init(9), hl_mmu_fini(9), hl_mmu_ctx_init(9), hl_mmu_scramble_addr(9), hl_mmu_descramble_addr(9), hl_mmu_get_hop_pte_phys_addr(9), hl_mmu_hr_pool_destroy(9), hl_mmu_hr_init(9), hl_mmu_hr_free_hop_remove_pgt(9), hl_mmu_hr_pte_phys_to_virt(9), hl_mmu_hr_write_pte(9), hl_mmu_hr_clear_pte(9), hl_mmu_hr_put_pte(9), hl_mmu_hr_get_pte(9), hl_mmu_hr_get_next_hop_pgt_info(9), hl_mmu_hr_alloc_hop(9), hl_mmu_hr_get_alloc_next_hop(9), hl_mmu_hr_get_tlb_info(9)


and that's the page, bestie!! 🫢 sourced from ./drivers/accel/habanalabs/com... (lol yes it's truncated, that's literally how it printed), dated October 2026, on hl_mmu_hr_fini(9). slay, go free those contexts first πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from