diff options
author | Thomas Hellstrom <thellstrom@vmware.com> | 2010-10-05 12:43:04 +0200 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2010-10-06 11:29:51 +1000 |
commit | e133e7371231e49c3e7d626e2251cb6f7c3ca1ad (patch) | |
tree | fbe8453b1243993e96f961f69b328cda05d096ab /drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | |
parent | 3a939a5ece3030e60c966a885c8e9bd329c4faf7 (diff) | |
download | op-kernel-dev-e133e7371231e49c3e7d626e2251cb6f7c3ca1ad.zip op-kernel-dev-e133e7371231e49c3e7d626e2251cb6f7c3ca1ad.tar.gz |
drm/vmwgfx: Prune modes based on available VRAM size
This needs to be reviewed once we support screen objects and don't rely
on VRAM for the frame-buffer.
Also fix some integer overflow issues pointed out by Michel Daenzer.
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/vmwgfx/vmwgfx_fb.c')
-rw-r--r-- | drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c index 409e172..086ef04 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c @@ -144,6 +144,13 @@ static int vmw_fb_check_var(struct fb_var_screeninfo *var, return -EINVAL; } + if (!vmw_kms_validate_mode_vram(vmw_priv, + info->fix.line_length, + var->yoffset + var->yres)) { + DRM_ERROR("Requested geom can not fit in framebuffer\n"); + return -EINVAL; + } + return 0; } |