summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/drm_fb_helper.c
diff options
context:
space:
mode:
authorXiubo Li2014-03-10 02:33:58 +0100
committerDaniel Vetter2014-03-17 11:23:08 +0100
commit04cfe97eb11c28848d14ba8c88124da31a9f881c (patch)
tree520bfac563bb7cdcf12c1a793c26c7d20948e5c1 /drivers/gpu/drm/drm_fb_helper.c
parentdrm: Check if the allocation has succeeded before dereferencing newmode (diff)
downloadkernel-qcow2-linux-04cfe97eb11c28848d14ba8c88124da31a9f881c.tar.gz
kernel-qcow2-linux-04cfe97eb11c28848d14ba8c88124da31a9f881c.tar.xz
kernel-qcow2-linux-04cfe97eb11c28848d14ba8c88124da31a9f881c.zip
drm/fb-helper: Do the 'max_conn_count' zero check
Since we cannot make sure the 'max_conn_count' will always be none zero from the users, and then if max_conn_count equals to zero, the kcalloc() will return ZERO_SIZE_PTR, which equals to ((void *)16). So this patch fix this with just doing the 'max_conn_count' zero check in the front of drm_fb_helper_init(). Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com> CC: Jani Nikula <jani.nikula@linux.intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/drm_fb_helper.c')
-rw-r--r--drivers/gpu/drm/drm_fb_helper.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
index e5208e072ac7..89382dce1d59 100644
--- a/drivers/gpu/drm/drm_fb_helper.c
+++ b/drivers/gpu/drm/drm_fb_helper.c
@@ -516,6 +516,9 @@ int drm_fb_helper_init(struct drm_device *dev,
struct drm_crtc *crtc;
int i;
+ if (!max_conn_count)
+ return -EINVAL;
+
fb_helper->dev = dev;
INIT_LIST_HEAD(&fb_helper->kernel_fb_list);