drm/kms/fb: check for depth changes from userspace for resizing.
Subsystems (2)
Dave Airlie
maintainerPATCH 1/1 drm/kms/fb: check for depth changes from userspace for resizing.
From: Dave Airlie <[email protected]>
If userspace (plymouth in this case) asks for a deeper depth, refuse it as well due to lack of resizing.
This fixes an issue since < 32MB cards went to 8bpp and plymouth crashes on startup.
Signed-off-by Dave Airlie <[email protected]>
--- drivers/gpu/drm/drm_fb_helper.c | 9 ++++----- 1 files changed, 4 insertions(+), 5 deletions(-)
drivers/gpu/drm/drm_fb_helper.c +4 -5
@@ -606,11 +606,10 @@ int drm_fb_helper_check_var(struct fb_var_screeninfo *var,return -EINVAL ;/* Need to resize the fb object !!! */ -if (var->xres > fb->width || var->yres > fb->height) { -DRM_ERROR ("Requested width/height is greater than current fb " -"object %dx%d > %dx%d\n" , var->xres, var->yres, - fb->width, fb->height); -DRM_ERROR ("Need resizing code.\n" ); +if (var->bits_per_pixel > fb->bits_per_pixel || var->xres > fb->width || var->yres > fb->height) { +DRM_DEBUG ("fb userspace requested width/height/bpp is greater than current fb " +"object %dx%d-%d > %dx%d-%d\n" , var->xres, var->yres, var->bits_per_pixel, + fb->width, fb->height, fb->bits_per_pixel);return -EINVAL ; }
Signature · 10 lines
1.6.5.2 ------------------------------------------------------------------------------ This SF.Net email is sponsored by the Verizon Developer Community Take advantage of Verizon's best-in-class app development support A streamlined, 14 day to market process makes app distribution fast and easy Join now and get one step closer to millions of Verizon customers http://p.sf.net/sfu/verizon-dev2dev --