diff options
author | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2012-11-08 09:09:42 (GMT) |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2012-11-20 05:37:41 (GMT) |
commit | e3cc3520dc2f554b9686b8fc5773d8b8bc8e9c9a (patch) | |
tree | 4fcc9faf86242ee70f29e7d1729045c3692a7e33 /drivers/gpu/drm | |
parent | 4c9287c6009b37754c42e0ba73a4cc79de92d8f8 (diff) | |
download | linux-e3cc3520dc2f554b9686b8fc5773d8b8bc8e9c9a.tar.xz |
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>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/drm_crtc.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c index 3533609..7ac3952 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, if (!drm_core_check_feature(dev, DRIVER_MODESET)) return -EINVAL; + if (r->flags & ~DRM_MODE_FB_INTERLACED) { + DRM_DEBUG_KMS("bad framebuffer flags 0x%08x\n", r->flags); + return -EINVAL; + } + if ((config->min_width > r->width) || (r->width > config->max_width)) { DRM_DEBUG_KMS("bad framebuffer width %d, should be >= %d && <= %d\n", r->width, config->min_width, config->max_width); |