aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2012-11-08 04:09:42 -0500
committerDave Airlie <airlied@redhat.com>2012-11-20 00:37:41 -0500
commite3cc3520dc2f554b9686b8fc5773d8b8bc8e9c9a (patch)
tree4fcc9faf86242ee70f29e7d1729045c3692a7e33
parent4c9287c6009b37754c42e0ba73a4cc79de92d8f8 (diff)
drm: Reject addfb2 with undefined flag bits set
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r--drivers/gpu/drm/drm_crtc.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
index 35336097fb47..7ac3952f74fc 100644
--- a/drivers/gpu/drm/drm_crtc.c
+++ b/drivers/gpu/drm/drm_crtc.c
@@ -2331,6 +2331,11 @@ int drm_mode_addfb2(struct drm_device *dev,
2331 if (!drm_core_check_feature(dev, DRIVER_MODESET)) 2331 if (!drm_core_check_feature(dev, DRIVER_MODESET))
2332 return -EINVAL; 2332 return -EINVAL;
2333 2333
2334 if (r->flags & ~DRM_MODE_FB_INTERLACED) {
2335 DRM_DEBUG_KMS("bad framebuffer flags 0x%08x\n", r->flags);
2336 return -EINVAL;
2337 }
2338
2334 if ((config->min_width > r->width) || (r->width > config->max_width)) { 2339 if ((config->min_width > r->width) || (r->width > config->max_width)) {
2335 DRM_DEBUG_KMS("bad framebuffer width %d, should be >= %d && <= %d\n", 2340 DRM_DEBUG_KMS("bad framebuffer width %d, should be >= %d && <= %d\n",
2336 r->width, config->min_width, config->max_width); 2341 r->width, config->min_width, config->max_width);