It would be an error to map these into kms->vm.  So reject this as early
as possible, when creating an fb.

Fixes: b58e12a66e47 ("drm/msm: Add _NO_SHARE flag")
Signed-off-by: Rob Clark <[email protected]>
---
 drivers/gpu/drm/msm/msm_fb.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/msm/msm_fb.c b/drivers/gpu/drm/msm/msm_fb.c
index 1eff615ff9bf..ce1725990a48 100644
--- a/drivers/gpu/drm/msm/msm_fb.c
+++ b/drivers/gpu/drm/msm/msm_fb.c
@@ -219,7 +219,12 @@ static struct drm_framebuffer *msm_framebuffer_init(struct 
drm_device *dev,
                         + mode_cmd->offsets[i];
 
                if (bos[i]->size < min_size) {
-                       ret = -EINVAL;
+                       ret = UERR(EINVAL, dev, "plane %d too small", i);
+                       goto fail;
+               }
+
+               if (to_msm_bo(bos[i])->flags & MSM_BO_NO_SHARE) {
+                       ret = UERR(EINVAL, dev, "Cannot map _NO_SHARE to kms 
vm");
                        goto fail;
                }
 
-- 
2.53.0

Reply via email to