From: Sasha Levin Date: Mon, 3 Feb 2025 12:48:17 +0000 (-0500) Subject: Drop drm-ttm-add-ttm_bo_access.patch X-Git-Tag: v6.6.76~60 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=11877bffa3d9cdd475962c9412a9cbd82842ace6;p=thirdparty%2Fkernel%2Fstable-queue.git Drop drm-ttm-add-ttm_bo_access.patch Signed-off-by: Sasha Levin --- diff --git a/queue-6.12/drm-ttm-add-ttm_bo_access.patch b/queue-6.12/drm-ttm-add-ttm_bo_access.patch deleted file mode 100644 index 2b8a41af24..0000000000 --- a/queue-6.12/drm-ttm-add-ttm_bo_access.patch +++ /dev/null @@ -1,122 +0,0 @@ -From 73b922f15552bb5b47cbcca4b4d2b131b89b786d Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 26 Nov 2024 09:46:09 -0800 -Subject: drm/ttm: Add ttm_bo_access -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -From: Matthew Brost - -[ Upstream commit 7d08df5d0bd3d12d14dcec773fcddbe3eed3a8e8 ] - -Non-contiguous VRAM cannot easily be mapped in TTM nor can non-visible -VRAM easily be accessed. Add ttm_bo_access, which is similar to -ttm_bo_vm_access, to access such memory. - -v4: - - Fix checkpatch warnings (CI) -v5: - - Fix checkpatch warnings (CI) -v6: - - Fix kernel doc (Auld) -v7: - - Move ttm_bo_access to ttm_bo_vm.c (Christian) - -Cc: Christian König -Reported-by: Christoph Manszewski -Suggested-by: Thomas Hellström -Signed-off-by: Matthew Brost -Tested-by: Mika Kuoppala -Reviewed-by: Matthew Auld -Reviewed-by: Christian König -Link: https://patchwork.freedesktop.org/patch/msgid/20241126174615.2665852-3-matthew.brost@intel.com -Stable-dep-of: 5f7bec831f1f ("drm/xe: Use ttm_bo_access in xe_vm_snapshot_capture_delayed") -Signed-off-by: Sasha Levin ---- - drivers/gpu/drm/ttm/ttm_bo_vm.c | 40 ++++++++++++++++++++++++++------- - include/drm/ttm/ttm_bo.h | 2 ++ - 2 files changed, 34 insertions(+), 8 deletions(-) - -diff --git a/drivers/gpu/drm/ttm/ttm_bo_vm.c b/drivers/gpu/drm/ttm/ttm_bo_vm.c -index 4212b8c91dd42..17667ab31ad4c 100644 ---- a/drivers/gpu/drm/ttm/ttm_bo_vm.c -+++ b/drivers/gpu/drm/ttm/ttm_bo_vm.c -@@ -405,13 +405,25 @@ static int ttm_bo_vm_access_kmap(struct ttm_buffer_object *bo, - return len; - } - --int ttm_bo_vm_access(struct vm_area_struct *vma, unsigned long addr, -- void *buf, int len, int write) -+/** -+ * ttm_bo_access - Helper to access a buffer object -+ * -+ * @bo: ttm buffer object -+ * @offset: access offset into buffer object -+ * @buf: pointer to caller memory to read into or write from -+ * @len: length of access -+ * @write: write access -+ * -+ * Utility function to access a buffer object. Useful when buffer object cannot -+ * be easily mapped (non-contiguous, non-visible, etc...). Should not directly -+ * be exported to user space via a peak / poke interface. -+ * -+ * Returns: -+ * @len if successful, negative error code on failure. -+ */ -+int ttm_bo_access(struct ttm_buffer_object *bo, unsigned long offset, -+ void *buf, int len, int write) - { -- struct ttm_buffer_object *bo = vma->vm_private_data; -- unsigned long offset = (addr) - vma->vm_start + -- ((vma->vm_pgoff - drm_vma_node_start(&bo->base.vma_node)) -- << PAGE_SHIFT); - int ret; - - if (len < 1 || (offset + len) > bo->base.size) -@@ -429,8 +441,8 @@ int ttm_bo_vm_access(struct vm_area_struct *vma, unsigned long addr, - break; - default: - if (bo->bdev->funcs->access_memory) -- ret = bo->bdev->funcs->access_memory( -- bo, offset, buf, len, write); -+ ret = bo->bdev->funcs->access_memory -+ (bo, offset, buf, len, write); - else - ret = -EIO; - } -@@ -439,6 +451,18 @@ int ttm_bo_vm_access(struct vm_area_struct *vma, unsigned long addr, - - return ret; - } -+EXPORT_SYMBOL(ttm_bo_access); -+ -+int ttm_bo_vm_access(struct vm_area_struct *vma, unsigned long addr, -+ void *buf, int len, int write) -+{ -+ struct ttm_buffer_object *bo = vma->vm_private_data; -+ unsigned long offset = (addr) - vma->vm_start + -+ ((vma->vm_pgoff - drm_vma_node_start(&bo->base.vma_node)) -+ << PAGE_SHIFT); -+ -+ return ttm_bo_access(bo, offset, buf, len, write); -+} - EXPORT_SYMBOL(ttm_bo_vm_access); - - static const struct vm_operations_struct ttm_bo_vm_ops = { -diff --git a/include/drm/ttm/ttm_bo.h b/include/drm/ttm/ttm_bo.h -index 7b56d1ca36d75..e383dee82001e 100644 ---- a/include/drm/ttm/ttm_bo.h -+++ b/include/drm/ttm/ttm_bo.h -@@ -421,6 +421,8 @@ void ttm_bo_unpin(struct ttm_buffer_object *bo); - int ttm_bo_evict_first(struct ttm_device *bdev, - struct ttm_resource_manager *man, - struct ttm_operation_ctx *ctx); -+int ttm_bo_access(struct ttm_buffer_object *bo, unsigned long offset, -+ void *buf, int len, int write); - vm_fault_t ttm_bo_vm_reserve(struct ttm_buffer_object *bo, - struct vm_fault *vmf); - vm_fault_t ttm_bo_vm_fault_reserved(struct vm_fault *vmf, --- -2.39.5 - diff --git a/queue-6.12/series b/queue-6.12/series index 0e5c44018c..0aec5cb37d 100644 --- a/queue-6.12/series +++ b/queue-6.12/series @@ -34,7 +34,6 @@ sched-split-out-__schedule-deactivate-task-logic-int.patch sched-psi-pass-enqueue-dequeue-flags-to-psi-callback.patch psi-fix-race-when-task-wakes-up-before-psi_sched_swi.patch drm-v3d-fix-performance-counter-source-settings-on-v.patch -drm-ttm-add-ttm_bo_access.patch drm-rockchip-vop2-fix-rk3588-dp-dsi-maxclk-verificat.patch drm-msm-dp-set-safe_to_exit_level-before-printing-it.patch drm-msm-hdmi-simplify-code-in-pll_get_integloop_gain.patch