From 5cb62a17f34d0373c6fa68a87c96547faa7fd578 Mon Sep 17 00:00:00 2001 From: Kasin Li Date: Sun, 4 Jun 2017 16:34:16 +0800 Subject: [PATCH] drm/msm: Fix kernel address issue of profile buffer Current DRM adds offset when making IOVA but failed to add it when making kernel address. This makes DRM write queue_s and submit_s to wrong place if the profile buffer is not at the head of a chunk of buffer. Change-Id: I5af9c3050f4c6c5e0a54ed495bf79053f08f0bab Signed-off-by: Kasin Li --- drivers/gpu/drm/msm/msm_gem_submit.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/msm/msm_gem_submit.c b/drivers/gpu/drm/msm/msm_gem_submit.c index c861bfd77537..f8e87f1acba4 100644 --- a/drivers/gpu/drm/msm/msm_gem_submit.c +++ b/drivers/gpu/drm/msm/msm_gem_submit.c @@ -482,7 +482,8 @@ int msm_ioctl_gem_submit(struct drm_device *dev, void *data, if (submit_cmd.type == MSM_SUBMIT_CMD_PROFILE_BUF) { submit->profile_buf_iova = submit->cmd[i].iova; submit->profile_buf_vaddr = - msm_gem_vaddr(&msm_obj->base); + msm_gem_vaddr(&msm_obj->base) + + submit_cmd.submit_offset; } if (submit->valid)