__i915_gem_...lmem_with_ps(9)
π NAME π
ok so bestie, this is the Kernel API Manual page for __i915_gem_object_create_lmem_with_ps β the whole title in the header is __i915_gem_...lmem_with_ps(9) in case you were wondering why it looks truncated, it's not a typo, it's just the manpage being shy β¨
And what does it do? It creates an lmem object and forces the minimum page size for the backing pages. That's the whole vibe. π
π¦ SYNOPSIS π¦
struct drm_i915_gem_object * __i915_gem_object_create_lmem_with_ps
(struct drm_i915_private *i915 , resource_size_t size , resource_size_t
page_size , unsigned int flags );
yeah she's a mouthful, but she's iconic π
πΈ ARGUMENTS πΈ
i915β the i915 instance. your main character struct, obvi πsizeβ the size in bytes for the object. ngl, heads up: we need to round the size up depending on thepage_size, so it's not always exactly the number you passed in. you can fish the final object size out from the drm GEM object afterwards, bestie πpage_sizeβ the requested minimum page size in bytes for this object. this one's actually so useful: you'd reach for it if you need something bigger than the region'smin_page_sizebecause of some hw restriction, or in some very specialised cases where it needs to be smaller β because when you round up the object size, the internal fragmentation cost is just too great πflagsβ the optional BO allocation flags. sprinkle as needed π
π DESCRIPTION π
ok so read this part twice, fr fr:
this interface assumes you know what you are doing when forcing the page_size π
and the consequences are not cute:
- if
page_sizeis smaller than the region'smin_page_size, then the object can never be inserted into any GTT. like, ever. periodt π - otherwise, it might lead to undefined behaviour π
so likeβ¦ be normal about it pleeeease π«Ά
β RETURN β
returns the object pointer, which might be an ERR_PTR in the case of failure. so like, vibe check your pointers before you slay onward, iykyk π₯
π SEE ALSO π
- Kernel file
./drivers/gpu/drm/i915/gem/i915_gem_lmem.c i915_gem_object_is_lmem(9)
and that's the whole page, bestie!! this little gem lives in ./drivers/gpu/drm/i915/gem, it's dated October 2026, and the version/title stamp on the bottom is __i915_gem_...lmem_with_ps(9) β mwah, go forth and force your page sizes responsibly πβ¨ππ¦
π¦ 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