Merge branch 'gma500-next' of git://github.com/patjak/drm-gma500 into drm-next

A few fixes and cleanups for 4.7 that's been collecting dust in my
inbox for a while.

* 'gma500-next' of git://github.com/patjak/drm-gma500:
  drm/gma500/mdfld_dsi: remove bogus if check
  drm/gma500: Fix possible out of bounds read
  drm/gma500: fix double freeing
This commit is contained in:
Dave Airlie 2016-04-14 13:07:12 +10:00
commit f9fd2adaac
3 changed files with 6 additions and 15 deletions

View File

@ -411,7 +411,7 @@ static int psbfb_create(struct psb_fbdev *fbdev,
info = drm_fb_helper_alloc_fbi(&fbdev->psb_fb_helper); info = drm_fb_helper_alloc_fbi(&fbdev->psb_fb_helper);
if (IS_ERR(info)) { if (IS_ERR(info)) {
ret = PTR_ERR(info); ret = PTR_ERR(info);
goto out_err1; goto err_free_range;
} }
info->par = fbdev; info->par = fbdev;
@ -419,7 +419,7 @@ static int psbfb_create(struct psb_fbdev *fbdev,
ret = psb_framebuffer_init(dev, psbfb, &mode_cmd, backing); ret = psb_framebuffer_init(dev, psbfb, &mode_cmd, backing);
if (ret) if (ret)
goto out_unref; goto err_release;
fb = &psbfb->base; fb = &psbfb->base;
psbfb->fbdev = info; psbfb->fbdev = info;
@ -464,14 +464,9 @@ static int psbfb_create(struct psb_fbdev *fbdev,
psbfb->base.width, psbfb->base.height); psbfb->base.width, psbfb->base.height);
return 0; return 0;
out_unref: err_release:
if (backing->stolen)
psb_gtt_free_range(dev, backing);
else
drm_gem_object_unreference_unlocked(&backing->gem);
drm_fb_helper_release_fbi(&fbdev->psb_fb_helper); drm_fb_helper_release_fbi(&fbdev->psb_fb_helper);
out_err1: err_free_range:
psb_gtt_free_range(dev, backing); psb_gtt_free_range(dev, backing);
return ret; return ret;
} }

View File

@ -979,11 +979,7 @@ struct mdfld_dsi_encoder *mdfld_dsi_dpi_init(struct drm_device *dev,
return NULL; return NULL;
} }
if (dsi_connector->pipe)
dpi_output->panel_on = 0; dpi_output->panel_on = 0;
else
dpi_output->panel_on = 0;
dpi_output->dev = dev; dpi_output->dev = dev;
if (mdfld_get_panel_type(dev, pipe) != TC35876X) if (mdfld_get_panel_type(dev, pipe) != TC35876X)
dpi_output->p_funcs = p_funcs; dpi_output->p_funcs = p_funcs;

View File

@ -72,7 +72,7 @@ static const char *const dsi_errors[] = {
"RX Prot Violation", "RX Prot Violation",
"HS Generic Write FIFO Full", "HS Generic Write FIFO Full",
"LP Generic Write FIFO Full", "LP Generic Write FIFO Full",
"Generic Read Data Avail" "Generic Read Data Avail",
"Special Packet Sent", "Special Packet Sent",
"Tearing Effect", "Tearing Effect",
}; };