Message ID | 1423120298-28619-4-git-send-email-jy0922.shim@samsung.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi, 2015-02-05 Joonyoung Shim <jy0922.shim@samsung.com>: > There is a case called disable_plane callback function even if > plane->crtc is NULL from exynos_drm_encoder_disable and it will cause > NULL pointer reference error. > > Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> > --- > drivers/gpu/drm/exynos/exynos_drm_encoder.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) You need to merge this patch with patch 3 or you will break the bisect. The NULL pointer is introduced by the previous patch, so fix it in the same patch. Once that is fixed: Reviewed-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> for the whole series. Gustavo
Hi, On 02/05/2015 10:07 PM, Gustavo Padovan wrote: > Hi, > > > 2015-02-05 Joonyoung Shim <jy0922.shim@samsung.com>: > >> There is a case called disable_plane callback function even if >> plane->crtc is NULL from exynos_drm_encoder_disable and it will cause >> NULL pointer reference error. >> >> Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> >> --- >> drivers/gpu/drm/exynos/exynos_drm_encoder.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) > > You need to merge this patch with patch 3 or you will break the bisect. > The NULL pointer is introduced by the previous patch, so fix it in the same > patch. > Yeah, it is revealed by patch 3 but it was original problem from before patch 3. How about apply this patch earlier than patch 3? > Once that is fixed: > > Reviewed-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> > Thanks for review.
Hi, 2015-02-06 Joonyoung Shim <jy0922.shim@samsung.com>: > Hi, > > On 02/05/2015 10:07 PM, Gustavo Padovan wrote: > > Hi, > > > > > > 2015-02-05 Joonyoung Shim <jy0922.shim@samsung.com>: > > > >> There is a case called disable_plane callback function even if > >> plane->crtc is NULL from exynos_drm_encoder_disable and it will cause > >> NULL pointer reference error. > >> > >> Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> > >> --- > >> drivers/gpu/drm/exynos/exynos_drm_encoder.c | 2 +- > >> 1 file changed, 1 insertion(+), 1 deletion(-) > > > > You need to merge this patch with patch 3 or you will break the bisect. > > The NULL pointer is introduced by the previous patch, so fix it in the same > > patch. > > > > Yeah, it is revealed by patch 3 but it was original problem from before > patch 3. How about apply this patch earlier than patch 3? Okay. That sounds good too. Gustavo
On 2015? 02? 05? 16:11, Joonyoung Shim wrote: > There is a case called disable_plane callback function even if > plane->crtc is NULL from exynos_drm_encoder_disable and it will cause > NULL pointer reference error. Applied. (patch 1 though 4) Thanks, Inki Dae > > Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> > --- > drivers/gpu/drm/exynos/exynos_drm_encoder.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/exynos/exynos_drm_encoder.c b/drivers/gpu/drm/exynos/exynos_drm_encoder.c > index 7e282e3..57de0bd 100644 > --- a/drivers/gpu/drm/exynos/exynos_drm_encoder.c > +++ b/drivers/gpu/drm/exynos/exynos_drm_encoder.c > @@ -102,7 +102,7 @@ static void exynos_drm_encoder_disable(struct drm_encoder *encoder) > > /* all planes connected to this encoder should be also disabled. */ > drm_for_each_legacy_plane(plane, &dev->mode_config.plane_list) { > - if (plane->crtc == encoder->crtc) > + if (plane->crtc && (plane->crtc == encoder->crtc)) > plane->funcs->disable_plane(plane); > } > } >
diff --git a/drivers/gpu/drm/exynos/exynos_drm_encoder.c b/drivers/gpu/drm/exynos/exynos_drm_encoder.c index 7e282e3..57de0bd 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_encoder.c +++ b/drivers/gpu/drm/exynos/exynos_drm_encoder.c @@ -102,7 +102,7 @@ static void exynos_drm_encoder_disable(struct drm_encoder *encoder) /* all planes connected to this encoder should be also disabled. */ drm_for_each_legacy_plane(plane, &dev->mode_config.plane_list) { - if (plane->crtc == encoder->crtc) + if (plane->crtc && (plane->crtc == encoder->crtc)) plane->funcs->disable_plane(plane); } }
There is a case called disable_plane callback function even if plane->crtc is NULL from exynos_drm_encoder_disable and it will cause NULL pointer reference error. Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> --- drivers/gpu/drm/exynos/exynos_drm_encoder.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)