On Tue, 2026-04-21 at 19:52 -0400, Lyude Paul wrote:
+/**
- __drm_gem_shmem_release_sgt_locked - Unpin and DMA unmap pages,
and release the
- cached scatter/gather table for an shmem GEM object.
It appears that I misnamed the function in this somehow still, so I will make note of this and make sure that it gets fixed in the next respin of this series
- @shmem: shmem GEM object
- If the passed shmem object has an active scatter/gather table for
driver
- usage, this function will unmap it and release the memory
associated with it.
- It is the responsibility of the caller to ensure it holds the
dma_resv_lock
- for this object.
- Drivers should not need to call this function themselves, it is
mainly
- intended for usage in the Rust shmem bindings.
- */
+void __drm_gem_shmem_free_sgt_locked(struct drm_gem_shmem_object *shmem) +{
- dma_resv_assert_held(shmem->base.resv);
- dma_unmap_sgtable(shmem->base.dev->dev, shmem->sgt,
DMA_BIDIRECTIONAL, 0);
- sg_free_table(shmem->sgt);
- kfree(shmem->sgt);
- shmem->sgt = NULL;
+} +EXPORT_SYMBOL_GPL(__drm_gem_shmem_free_sgt_locked);