drm_gpusvm_range_put(9)
π drm_gpusvm_range_put(9) β the Kernel API Manual page
okay so bestie, welcome to the Kernel API Manual, this is drm_gpusvm_range_put(9) and it's honestly a short one but it is so important, like the quiet kid in class who actually runs everything. let's get into it π«Ά
β¨ NAME β¨
drm_gpusvm_range_put β put a reference to GPU SVM range
that's it. that's the whole vibe. you're giving a reference back. you're releasing your grip. character development fr.
π¦ SYNOPSIS π¦
void drm_gpusvm_range_put (struct drm_gpusvm_range *range );
no return value, no drama, no notes. it just does the thing π
π ARGUMENTS π
rangeβ Pointer to the GPU SVM range
that's the one (1) thing you hand it. the range. the pointer. the whole situation. β¨
π₯ DESCRIPTION π₯
okay so here's what's actually happening: this function decrements the reference count of the specified GPU SVM range, and when that count reaches zero, it frees it. ποΈ
that's the entire personality. reference goes down, and if it hits zero β boom, freed. it's giving "last one out turns off the lights." it's giving "you had your turn, now release it." highkey iconic π
bestie pls internalize this one: the free only happens when the count reaches zero. not one, not "whenever," zero. don't be out here double-putting on a range you don't own, that's not the move π
π SEE ALSO π
the whole friend group, no cap. every single one of them:
- Kernel file
./drivers/gpu/drm/drm_gpusvm.c Overview(9)Locking(9)Partial Unmapping of Ranges(9)Examples(9)npages_in_range(9)drm_gpusvm_notifier_find(9)drm_gpusvm_range_find(9)drm_gpusvm_notifier_invalidate(9)drm_gpusvm_init(9)to_drm_gpusvm_notifier(9)drm_gpusvm_notifier_insert(9)drm_gpusvm_notifier_remove(9)drm_gpusvm_fini(9)drm_gpusvm_notifier_alloc(9)drm_gpusvm_notifier_free(9)to_drm_gpusvm_range(9)drm_gpusvm_range_insert(9)__drm_gpusvm_range_remove(9)drm_gpusvm_range_alloc(9)drm_gpusvm_hmm_pfn_to_order(9)drm_gpusvm_check_pages(9)drm_gpusvm_scan_mm(9)drm_gpusvm_range_chunk_size(9)drm_gpusvm_driver_lock_held(9)drm_gpusvm_find_vma_start(9)drm_gpusvm_range_find_or_insert(9)__drm_gpusvm_unmap_pages(9)__drm_gpusvm_free_pages(9)drm_gpusvm_free_pages(9)drm_gpusvm_range_remove(9)drm_gpusvm_range_get(9)drm_gpusvm_range_destroy(9)drm_gpusvm_pages_valid(9)drm_gpusvm_pages_valid_unlocked(9)drm_gpusvm_get_pages(9)drm_gpusvm_unmap_pages(9)drm_gpusvm_range_evict(9)drm_gpusvm_has_mapping(9)drm_gpusvm_range_set_unmapped(9)
like I said. the whole group chat. π
and that's the page bestie!! πβ¨ this one came from ./drivers/gpu/drm and it's dated October 2026 β go drink some water, release your references, mwah ππ
π¦ 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