On 4/26/25 15:40, Sasha Levin wrote:
This is a note to let you know that I've just added the patch titled
drm/amdgpu: Remove amdgpu_device arg from free_sgt api (v2)
to the 5.10-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git%3Ba=su...
The filename of the patch is: drm-amdgpu-remove-amdgpu_device-arg-from-free_sgt-ap.patch and it can be found in the queue-5.10 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let stable@vger.kernel.org know about it.
Mhm, why has that patch been picked up for backporting? It's a cleanup and not a bug fix.
When some other fix depends on it it's probably ok to backport it as well, but stand alone it would probably rather hurt than help,
Regards, Christian.
commit 09a1b6ca7c7d9c07c702479646a0a8cfa2329e11 Author: Ramesh Errabolu Ramesh.Errabolu@amd.com Date: Wed Feb 24 20:48:06 2021 -0600
drm/amdgpu: Remove amdgpu_device arg from free_sgt api (v2)
[ Upstream commit 5392b2af97dc5802991f953eb2687e538da4688c ] Currently callers have to provide handle of amdgpu_device, which is not used by the implementation. It is unlikely this parameter will become useful in future, thus removing it v2: squash in unused variable fix Reviewed-by: Christian König christian.koenig@amd.com Signed-off-by: Ramesh Errabolu Ramesh.Errabolu@amd.com Signed-off-by: Alex Deucher alexander.deucher@amd.com Stable-dep-of: c0dd8a9253fa ("drm/amdgpu/dma_buf: fix page_link check") Signed-off-by: Sasha Levin sashal@kernel.org
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c index e93ccdc5faf4e..bbbacc7b6c463 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c @@ -357,17 +357,12 @@ static void amdgpu_dma_buf_unmap(struct dma_buf_attachment *attach, struct sg_table *sgt, enum dma_data_direction dir) {
- struct dma_buf *dma_buf = attach->dmabuf;
- struct drm_gem_object *obj = dma_buf->priv;
- struct amdgpu_bo *bo = gem_to_amdgpu_bo(obj);
- struct amdgpu_device *adev = amdgpu_ttm_adev(bo->tbo.bdev);
- if (sgt->sgl->page_link) { dma_unmap_sgtable(attach->dev, sgt, dir, 0); sg_free_table(sgt); kfree(sgt); } else {
amdgpu_vram_mgr_free_sgt(adev, attach->dev, dir, sgt);
}amdgpu_vram_mgr_free_sgt(attach->dev, dir, sgt);
} diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h index a87951b2f06dd..bd873b1b760cf 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h @@ -113,8 +113,7 @@ int amdgpu_vram_mgr_alloc_sgt(struct amdgpu_device *adev, struct device *dev, enum dma_data_direction dir, struct sg_table **sgt); -void amdgpu_vram_mgr_free_sgt(struct amdgpu_device *adev,
struct device *dev,
+void amdgpu_vram_mgr_free_sgt(struct device *dev, enum dma_data_direction dir, struct sg_table *sgt); uint64_t amdgpu_vram_mgr_usage(struct ttm_resource_manager *man); diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c index 2c3a94e939bab..ad72db21b8d62 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c @@ -530,15 +530,13 @@ int amdgpu_vram_mgr_alloc_sgt(struct amdgpu_device *adev, /**
- amdgpu_vram_mgr_alloc_sgt - allocate and fill a sg table
*/
- @adev: amdgpu device pointer
- @dev: device pointer
- @dir: data direction of resource to unmap
- @sgt: sg table to free
- Free a previously allocate sg table.
-void amdgpu_vram_mgr_free_sgt(struct amdgpu_device *adev,
struct device *dev,
+void amdgpu_vram_mgr_free_sgt(struct device *dev, enum dma_data_direction dir, struct sg_table *sgt) {