hl_vm_init(9)
π hl_vm_init(9) β Kernel API Manual π
okay bestie, this is the Kernel API Manual page for hl_vm_init(9), and itβs giving βtiny function, very specific job.β Letβs get into it. π
π NAME π
hl_vm_init β initialize virtual memory module.
πΈ SYNOPSIS πΈ
the signature is literally this, character for character:
int hl_vm_init (struct hl_device *hdev );
π ARGUMENTS π
hdevβ pointer to the habanalabs device structure. Thatβs the argument vibe, no cap. π«Ά
π« DESCRIPTION π«
okay so this function initializes the following β read it and weep (affectionately):
- MMU module β yep, the MMU module gets initialized. slay. β¨
- DRAM physical pages pool of 2MB β the DRAM physical pages pool of 2MB gets initialized. π
- Idr for device memory allocation handles β the Idr for device memory allocation handles gets initialized too, periodt. π
π¦ SEE ALSO π¦
if youβre going down the rabbit hole, hereβs the entire SEE ALSO squad β every single one, zero skips:
- Kernel file
./drivers/accel/habanalabs/common/memory.c dma_map_host_va(9)dma_unmap_host_va(9)dram_pg_pool_do_release(9)free_phys_pg_pack(9)free_device_memory(9)clear_va_list_locked(9)print_va_list_locked(9)merge_va_blocks_locked(9)add_va_block_locked(9)add_va_block(9)is_hint_crossing_range(9)get_va_block(9)hl_get_va_range_type(9)hl_unreserve_va_block(9)init_phys_pg_pack_from_userptr(9)map_phys_pg_pack(9)unmap_phys_pg_pack(9)map_device_va(9)unmap_device_va(9)hl_hw_block_mmap(9)export_dmabuf_from_addr(9)allocate_timestamps_buffers(9)hl_pin_host_memory(9)hl_userptr_delete_list(9)hl_userptr_is_pinned(9)va_range_init(9)va_range_fini(9)vm_ctx_init_with_ranges(9)hl_vm_ctx_fini(9)hl_vm_fini(9)hl_hw_block_mem_init(9)hl_hw_block_mem_fini(9)
π cute sign-off: source/version is ./drivers/accel/habanalabs/common, dated October 2026. Thatβs the footer lore, bestie β periodt. π
π¦ 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