Message ID | 20190617181548.124134-1-sean@poorly.run (mailing list archive) |
---|---|
State | New |
Delegated to: | Kieran Bingham |
Headers | show |
Series | drm/rcar-du: Fix error check when retrieving crtc state | expand |
Hi Sean, Thank you for the patch. On Mon, Jun 17, 2019 at 02:15:42PM -0400, Sean Paul wrote: > From: Sean Paul <seanpaul@chromium.org> > > drm_atomic_get_crtc_state() returns an error pointer when it fails, so > the null check is doing nothing here. > > Credit to 0-day/Dan Carpenter for reporting this. > > Fixes: 6f3b62781bbd ("drm: Convert connector_helper_funcs->atomic_check to accept drm_atomic_state") > Cc: Daniel Vetter <daniel@ffwll.ch> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > Cc: Jani Nikula <jani.nikula@linux.intel.com> > Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> > Cc: Ben Skeggs <bskeggs@redhat.com> > Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > Cc: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> > Cc: Eric Anholt <eric@anholt.net> > Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> [for rcar lvds] > Cc: Sean Paul <seanpaul@chromium.org> > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > Cc: Maxime Ripard <maxime.ripard@bootlin.com> > Cc: Sean Paul <sean@poorly.run> > Cc: David Airlie <airlied@linux.ie> > Cc: Lyude Paul <lyude@redhat.com> > Cc: Karol Herbst <karolherbst@gmail.com> > Cc: Ilia Mirkin <imirkin@alum.mit.edu> > Cc: dri-devel@lists.freedesktop.org > Cc: intel-gfx@lists.freedesktop.org > Cc: linux-renesas-soc@vger.kernel.org > Reported-by: kbuild test robot <lkp@intel.com> > Reported-by: Dan Carpenter <dan.carpenter@oracle.com> > Signed-off-by: Sean Paul <seanpaul@chromium.org> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> I have no pending conflicting changes for rcar_lvds.c. Do you plan to merge this through drm-misc ? > --- > drivers/gpu/drm/rcar-du/rcar_lvds.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/rcar-du/rcar_lvds.c b/drivers/gpu/drm/rcar-du/rcar_lvds.c > index f2a5d4d997073..1c62578590f46 100644 > --- a/drivers/gpu/drm/rcar-du/rcar_lvds.c > +++ b/drivers/gpu/drm/rcar-du/rcar_lvds.c > @@ -115,8 +115,8 @@ static int rcar_lvds_connector_atomic_check(struct drm_connector *connector, > > /* We're not allowed to modify the resolution. */ > crtc_state = drm_atomic_get_crtc_state(state, conn_state->crtc); > - if (!crtc_state) > - return -EINVAL; > + if (IS_ERR(crtc_state)) > + return PTR_ERR(crtc_state); > > if (crtc_state->mode.hdisplay != panel_mode->hdisplay || > crtc_state->mode.vdisplay != panel_mode->vdisplay)
On Tue, Jun 18, 2019 at 10:26:52AM +0300, Laurent Pinchart wrote: > Hi Sean, > > Thank you for the patch. > > On Mon, Jun 17, 2019 at 02:15:42PM -0400, Sean Paul wrote: > > From: Sean Paul <seanpaul@chromium.org> > > > > drm_atomic_get_crtc_state() returns an error pointer when it fails, so > > the null check is doing nothing here. > > > > Credit to 0-day/Dan Carpenter for reporting this. > > > > Fixes: 6f3b62781bbd ("drm: Convert connector_helper_funcs->atomic_check to accept drm_atomic_state") > > Cc: Daniel Vetter <daniel@ffwll.ch> > > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Cc: Jani Nikula <jani.nikula@linux.intel.com> > > Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> > > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> > > Cc: Ben Skeggs <bskeggs@redhat.com> > > Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > > Cc: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> > > Cc: Eric Anholt <eric@anholt.net> > > Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> [for rcar lvds] > > Cc: Sean Paul <seanpaul@chromium.org> > > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > > Cc: Maxime Ripard <maxime.ripard@bootlin.com> > > Cc: Sean Paul <sean@poorly.run> > > Cc: David Airlie <airlied@linux.ie> > > Cc: Lyude Paul <lyude@redhat.com> > > Cc: Karol Herbst <karolherbst@gmail.com> > > Cc: Ilia Mirkin <imirkin@alum.mit.edu> > > Cc: dri-devel@lists.freedesktop.org > > Cc: intel-gfx@lists.freedesktop.org > > Cc: linux-renesas-soc@vger.kernel.org > > Reported-by: kbuild test robot <lkp@intel.com> > > Reported-by: Dan Carpenter <dan.carpenter@oracle.com> > > Signed-off-by: Sean Paul <seanpaul@chromium.org> > > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > > I have no pending conflicting changes for rcar_lvds.c. Do you plan to > merge this through drm-misc ? Thanks for your review! Yeah, since the bug is only in drm-misc-next, this will also go there. Speaking of which, I just applied it :-) Sean > > > --- > > drivers/gpu/drm/rcar-du/rcar_lvds.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/gpu/drm/rcar-du/rcar_lvds.c b/drivers/gpu/drm/rcar-du/rcar_lvds.c > > index f2a5d4d997073..1c62578590f46 100644 > > --- a/drivers/gpu/drm/rcar-du/rcar_lvds.c > > +++ b/drivers/gpu/drm/rcar-du/rcar_lvds.c > > @@ -115,8 +115,8 @@ static int rcar_lvds_connector_atomic_check(struct drm_connector *connector, > > > > /* We're not allowed to modify the resolution. */ > > crtc_state = drm_atomic_get_crtc_state(state, conn_state->crtc); > > - if (!crtc_state) > > - return -EINVAL; > > + if (IS_ERR(crtc_state)) > > + return PTR_ERR(crtc_state); > > > > if (crtc_state->mode.hdisplay != panel_mode->hdisplay || > > crtc_state->mode.vdisplay != panel_mode->vdisplay) > > -- > Regards, > > Laurent Pinchart
diff --git a/drivers/gpu/drm/rcar-du/rcar_lvds.c b/drivers/gpu/drm/rcar-du/rcar_lvds.c index f2a5d4d997073..1c62578590f46 100644 --- a/drivers/gpu/drm/rcar-du/rcar_lvds.c +++ b/drivers/gpu/drm/rcar-du/rcar_lvds.c @@ -115,8 +115,8 @@ static int rcar_lvds_connector_atomic_check(struct drm_connector *connector, /* We're not allowed to modify the resolution. */ crtc_state = drm_atomic_get_crtc_state(state, conn_state->crtc); - if (!crtc_state) - return -EINVAL; + if (IS_ERR(crtc_state)) + return PTR_ERR(crtc_state); if (crtc_state->mode.hdisplay != panel_mode->hdisplay || crtc_state->mode.vdisplay != panel_mode->vdisplay)