aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKees Cook <keescook@chromium.org>2013-03-11 17:37:35 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-03-13 16:17:28 -0400
commit3058753583c6a641bac188011b4d777adec916c9 (patch)
tree48378ab7c65d8545d1a427dc4fa5a8d8668a4c74
parent647416f9eefe7699754b01b9fc82758fde83248c (diff)
drm/i915: clarify reasoning for the access_ok call
This clarifies the comment above the access_ok check so a missing VERIFY_READ doesn't alarm anyone. v2: - rewrote comment, thanks to Chris Wilson Signed-off-by: Kees Cook <keescook@chromium.org> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> [danvet: add patch history log to commit message.] Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r--drivers/gpu/drm/i915/i915_gem_execbuffer.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
index 934396c5f048..ea963c32772d 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
@@ -747,7 +747,11 @@ validate_exec_list(struct drm_i915_gem_exec_object2 *exec,
747 747
748 length = exec[i].relocation_count * 748 length = exec[i].relocation_count *
749 sizeof(struct drm_i915_gem_relocation_entry); 749 sizeof(struct drm_i915_gem_relocation_entry);
750 /* we may also need to update the presumed offsets */ 750 /*
751 * We must check that the entire relocation array is safe
752 * to read, but since we may need to update the presumed
753 * offsets during execution, check for full write access.
754 */
751 if (!access_ok(VERIFY_WRITE, ptr, length)) 755 if (!access_ok(VERIFY_WRITE, ptr, length))
752 return -EFAULT; 756 return -EFAULT;
753 757