drm_gpusvm_check_pages(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

okay so this is drm_gpusvm_check_pages(9), straight out of the Kernel API Manual, and the official NAME is literally Check pages. That’s the whole assignment, bestie: check pages. πŸ’…


🌸 SYNOPSIS 🌸

       bool drm_gpusvm_check_pages (struct drm_gpusvm *gpusvm , struct
       drm_gpusvm_notifier *notifier , unsigned long start , unsigned long end
       , void *dev_private_owner );

πŸŽ€ ARGUMENTS πŸŽ€

  • gpusvm β€” Pointer to the GPU SVM structure. it’s giving main-character struct pointer ✨
  • notifier β€” Pointer to the GPU SVM notifier structure. 🫢
  • start β€” Start address. πŸ“
  • end β€” End address. 🏁
  • dev_private_owner β€” The device private page owner. πŸ‘‘

πŸ’– DESCRIPTION πŸ’–

So what this actually does: it checks if the pages between start and end have been faulted in on the CPU. Like, β€œare these pages CPU-backed or not?” vibes. Use it to prevent migration of pages without CPU backing store. That’s the plot. No cap. πŸ”₯


πŸ”₯ RETURN πŸ”₯

True if pages have been faulted into CPU, False otherwise. Literally that simple, bestie. βœ…


πŸ‘‘ SEE ALSO πŸ‘‘

Also peep the kernel file ./drivers/gpu/drm/drm_gpusvm.c and the whole friend group of cross-refs: 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_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_range_put(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). πŸ¦‹


Cute little sign-off: this one lives under ./drivers/gpu/drm, dated October 2026, and it’s drm_gpusvm_check_pages(9). Mwah πŸ’‹πŸŽ€

πŸ“¦ where this page comes from