Re: [PATCH] drm/msm: Upgrade gxpd checks to IS_ERR_OR_NULL
On Wed 15 May 13:07 PDT 2019, Sean Paul wrote: > On Wed, May 15, 2019 at 3:39 PM Jordan Crouse wrote: > > > > On Wed, May 15, 2019 at 01:00:52PM -0400, Sean Paul wrote: > > > From: Sean Paul > > > > > > dev_pm_domain_attach_by_name() can return NULL, so we should check for > > > that case when we're about to dereference gxpd. > > > > > > Fixes: 9325d4266afd ("drm/msm/gpu: Attach to the GPU GX power domain") > > > Cc: Jordan Crouse > > > Cc: Rob Clark > > > Signed-off-by: Sean Paul > > > > Reviewed-by: Jordan Crouse > > > > Thanks for the review, I've applied it to -misc-next-fixes with the > other msm fixes for 5.2 > Thanks for fixing this. I hadn't published my for-next-next branch when I spotted this, so the addition of the GPU in the dts was amended to include the gxpd - and will show up on -next after -rc1. Regards, Bjorn > > Sean > > > > --- > > > drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 6 +++--- > > > 1 file changed, 3 insertions(+), 3 deletions(-) > > > > > > diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > > > b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > > > index 9155dafae2a90..38e2cfa9cec79 100644 > > > --- a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > > > +++ b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > > > @@ -747,7 +747,7 @@ int a6xx_gmu_resume(struct a6xx_gpu *a6xx_gpu) > > >* will make sure that the refcounting is correct in case we need to > > >* bring down the GX after a GMU failure > > >*/ > > > - if (!IS_ERR(gmu->gxpd)) > > > + if (!IS_ERR_OR_NULL(gmu->gxpd)) > > > pm_runtime_get(gmu->gxpd); > > > > > > out: > > > @@ -863,7 +863,7 @@ int a6xx_gmu_stop(struct a6xx_gpu *a6xx_gpu) > > >* domain. Usually the GMU does this but only if the shutdown > > > sequence > > >* was successful > > >*/ > > > - if (!IS_ERR(gmu->gxpd)) > > > + if (!IS_ERR_OR_NULL(gmu->gxpd)) > > > pm_runtime_put_sync(gmu->gxpd); > > > > > > clk_bulk_disable_unprepare(gmu->nr_clocks, gmu->clocks); > > > @@ -1234,7 +1234,7 @@ void a6xx_gmu_remove(struct a6xx_gpu *a6xx_gpu) > > > > > > pm_runtime_disable(gmu->dev); > > > > > > - if (!IS_ERR(gmu->gxpd)) { > > > + if (!IS_ERR_OR_NULL(gmu->gxpd)) { > > > pm_runtime_disable(gmu->gxpd); > > > dev_pm_domain_detach(gmu->gxpd, false); > > > } > > > -- > > > Sean Paul, Software Engineer, Google / Chromium OS > > > > > > > -- > > The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, > > a Linux Foundation Collaborative Project ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: [PATCH] drm/msm: Upgrade gxpd checks to IS_ERR_OR_NULL
On Wed, May 15, 2019 at 3:39 PM Jordan Crouse wrote: > > On Wed, May 15, 2019 at 01:00:52PM -0400, Sean Paul wrote: > > From: Sean Paul > > > > dev_pm_domain_attach_by_name() can return NULL, so we should check for > > that case when we're about to dereference gxpd. > > > > Fixes: 9325d4266afd ("drm/msm/gpu: Attach to the GPU GX power domain") > > Cc: Jordan Crouse > > Cc: Rob Clark > > Signed-off-by: Sean Paul > > Reviewed-by: Jordan Crouse > Thanks for the review, I've applied it to -misc-next-fixes with the other msm fixes for 5.2 Sean > > --- > > drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 6 +++--- > > 1 file changed, 3 insertions(+), 3 deletions(-) > > > > diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > > b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > > index 9155dafae2a90..38e2cfa9cec79 100644 > > --- a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > > +++ b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > > @@ -747,7 +747,7 @@ int a6xx_gmu_resume(struct a6xx_gpu *a6xx_gpu) > >* will make sure that the refcounting is correct in case we need to > >* bring down the GX after a GMU failure > >*/ > > - if (!IS_ERR(gmu->gxpd)) > > + if (!IS_ERR_OR_NULL(gmu->gxpd)) > > pm_runtime_get(gmu->gxpd); > > > > out: > > @@ -863,7 +863,7 @@ int a6xx_gmu_stop(struct a6xx_gpu *a6xx_gpu) > >* domain. Usually the GMU does this but only if the shutdown sequence > >* was successful > >*/ > > - if (!IS_ERR(gmu->gxpd)) > > + if (!IS_ERR_OR_NULL(gmu->gxpd)) > > pm_runtime_put_sync(gmu->gxpd); > > > > clk_bulk_disable_unprepare(gmu->nr_clocks, gmu->clocks); > > @@ -1234,7 +1234,7 @@ void a6xx_gmu_remove(struct a6xx_gpu *a6xx_gpu) > > > > pm_runtime_disable(gmu->dev); > > > > - if (!IS_ERR(gmu->gxpd)) { > > + if (!IS_ERR_OR_NULL(gmu->gxpd)) { > > pm_runtime_disable(gmu->gxpd); > > dev_pm_domain_detach(gmu->gxpd, false); > > } > > -- > > Sean Paul, Software Engineer, Google / Chromium OS > > > > -- > The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, > a Linux Foundation Collaborative Project ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: [PATCH] drm/msm: Upgrade gxpd checks to IS_ERR_OR_NULL
On Wed, May 15, 2019 at 01:00:52PM -0400, Sean Paul wrote: > From: Sean Paul > > dev_pm_domain_attach_by_name() can return NULL, so we should check for > that case when we're about to dereference gxpd. > > Fixes: 9325d4266afd ("drm/msm/gpu: Attach to the GPU GX power domain") > Cc: Jordan Crouse > Cc: Rob Clark > Signed-off-by: Sean Paul Reviewed-by: Jordan Crouse > --- > drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > index 9155dafae2a90..38e2cfa9cec79 100644 > --- a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > +++ b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > @@ -747,7 +747,7 @@ int a6xx_gmu_resume(struct a6xx_gpu *a6xx_gpu) >* will make sure that the refcounting is correct in case we need to >* bring down the GX after a GMU failure >*/ > - if (!IS_ERR(gmu->gxpd)) > + if (!IS_ERR_OR_NULL(gmu->gxpd)) > pm_runtime_get(gmu->gxpd); > > out: > @@ -863,7 +863,7 @@ int a6xx_gmu_stop(struct a6xx_gpu *a6xx_gpu) >* domain. Usually the GMU does this but only if the shutdown sequence >* was successful >*/ > - if (!IS_ERR(gmu->gxpd)) > + if (!IS_ERR_OR_NULL(gmu->gxpd)) > pm_runtime_put_sync(gmu->gxpd); > > clk_bulk_disable_unprepare(gmu->nr_clocks, gmu->clocks); > @@ -1234,7 +1234,7 @@ void a6xx_gmu_remove(struct a6xx_gpu *a6xx_gpu) > > pm_runtime_disable(gmu->dev); > > - if (!IS_ERR(gmu->gxpd)) { > + if (!IS_ERR_OR_NULL(gmu->gxpd)) { > pm_runtime_disable(gmu->gxpd); > dev_pm_domain_detach(gmu->gxpd, false); > } > -- > Sean Paul, Software Engineer, Google / Chromium OS > -- The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
[PATCH] drm/msm: Upgrade gxpd checks to IS_ERR_OR_NULL
From: Sean Paul dev_pm_domain_attach_by_name() can return NULL, so we should check for that case when we're about to dereference gxpd. Fixes: 9325d4266afd ("drm/msm/gpu: Attach to the GPU GX power domain") Cc: Jordan Crouse Cc: Rob Clark Signed-off-by: Sean Paul --- drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c index 9155dafae2a90..38e2cfa9cec79 100644 --- a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c +++ b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c @@ -747,7 +747,7 @@ int a6xx_gmu_resume(struct a6xx_gpu *a6xx_gpu) * will make sure that the refcounting is correct in case we need to * bring down the GX after a GMU failure */ - if (!IS_ERR(gmu->gxpd)) + if (!IS_ERR_OR_NULL(gmu->gxpd)) pm_runtime_get(gmu->gxpd); out: @@ -863,7 +863,7 @@ int a6xx_gmu_stop(struct a6xx_gpu *a6xx_gpu) * domain. Usually the GMU does this but only if the shutdown sequence * was successful */ - if (!IS_ERR(gmu->gxpd)) + if (!IS_ERR_OR_NULL(gmu->gxpd)) pm_runtime_put_sync(gmu->gxpd); clk_bulk_disable_unprepare(gmu->nr_clocks, gmu->clocks); @@ -1234,7 +1234,7 @@ void a6xx_gmu_remove(struct a6xx_gpu *a6xx_gpu) pm_runtime_disable(gmu->dev); - if (!IS_ERR(gmu->gxpd)) { + if (!IS_ERR_OR_NULL(gmu->gxpd)) { pm_runtime_disable(gmu->gxpd); dev_pm_domain_detach(gmu->gxpd, false); } -- Sean Paul, Software Engineer, Google / Chromium OS ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel