diff options
author | Jordan Crouse <jcrouse@codeaurora.org> | 2016-12-20 18:54:31 +0300 |
---|---|---|
committer | Rob Clark <robdclark@gmail.com> | 2016-12-29 23:03:00 +0300 |
commit | a6cb3b864b21b7345f824a4faa12b723c8aaf099 (patch) | |
tree | af0bf5e6ef9607b02bd511473e19e3f705c3d33f /drivers/gpu/drm/msm | |
parent | 6490abc4bc35fa4f3bdb9c7e49096943c50e29ea (diff) | |
download | linux-a6cb3b864b21b7345f824a4faa12b723c8aaf099.tar.xz |
drm/msm: Verify that MSM_SUBMIT_BO_FLAGS are set
For every submission buffer object one of MSM_SUBMIT_BO_WRITE
and MSM_SUBMIT_BO_READ must be set (and nothing else). If we
allowed zero then the buffer object would never get queued to
be unreferenced.
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/msm')
-rw-r--r-- | drivers/gpu/drm/msm/msm_gem_submit.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/msm/msm_gem_submit.c b/drivers/gpu/drm/msm/msm_gem_submit.c index b6411ea6ed17..489676568a10 100644 --- a/drivers/gpu/drm/msm/msm_gem_submit.c +++ b/drivers/gpu/drm/msm/msm_gem_submit.c @@ -106,7 +106,8 @@ static int submit_lookup_objects(struct msm_gem_submit *submit, pagefault_disable(); } - if (submit_bo.flags & ~MSM_SUBMIT_BO_FLAGS) { + if ((submit_bo.flags & ~MSM_SUBMIT_BO_FLAGS) || + !(submit_bo.flags & MSM_SUBMIT_BO_FLAGS)) { DRM_ERROR("invalid flags: %x\n", submit_bo.flags); ret = -EINVAL; goto out_unlock; |