On Thu, Feb 27, 2020 at 03:02:23PM +0300, Wambui Karuga wrote: > Since commit 987d65d01356 (drm: debugfs: make > drm_debugfs_create_files() never fail), drm_debugfs_create_files() does > not fail, and should return void. This change therefore removes the > checks of its return value in drm/msm and subsequent error handling. > > These changes also enable the changing of various debugfs_init() > functions to return void. > > Signed-off-by: Wambui Karuga <wambui.karugax@xxxxxxxxx> I think msm_kms_funcs->debugfs_init could also be made to return void. But that's quite a bit more involved so doesn't make much sense to do that as part of this patch series. Also the debug/core_perf/ files look kinda funny, if I'd bet this is used by the qualcomm hwc somewhere to make it's decisions :-) That's at least what's been the case everywhere else I spotted something like that. -Daniel > --- > drivers/gpu/drm/msm/adreno/a5xx_debugfs.c | 18 +++++------------- > drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c | 14 +++----------- > drivers/gpu/drm/msm/msm_debugfs.c | 21 ++++++--------------- > drivers/gpu/drm/msm/msm_debugfs.h | 2 +- > drivers/gpu/drm/msm/msm_gpu.h | 2 +- > 5 files changed, 16 insertions(+), 41 deletions(-) > > diff --git a/drivers/gpu/drm/msm/adreno/a5xx_debugfs.c b/drivers/gpu/drm/msm/adreno/a5xx_debugfs.c > index 075ecce4b5e0..8cae2ca4af6b 100644 > --- a/drivers/gpu/drm/msm/adreno/a5xx_debugfs.c > +++ b/drivers/gpu/drm/msm/adreno/a5xx_debugfs.c > @@ -148,27 +148,19 @@ reset_set(void *data, u64 val) > DEFINE_SIMPLE_ATTRIBUTE(reset_fops, NULL, reset_set, "%llx\n"); > > > -int a5xx_debugfs_init(struct msm_gpu *gpu, struct drm_minor *minor) > +void a5xx_debugfs_init(struct msm_gpu *gpu, struct drm_minor *minor) > { > struct drm_device *dev; > - int ret; > > if (!minor) > - return 0; > + return; > > dev = minor->dev; > > - ret = drm_debugfs_create_files(a5xx_debugfs_list, > - ARRAY_SIZE(a5xx_debugfs_list), > - minor->debugfs_root, minor); > - > - if (ret) { > - DRM_DEV_ERROR(dev->dev, "could not install a5xx_debugfs_list\n"); > - return ret; > - } > + drm_debugfs_create_files(a5xx_debugfs_list, > + ARRAY_SIZE(a5xx_debugfs_list), > + minor->debugfs_root, minor); > > debugfs_create_file("reset", S_IWUGO, minor->debugfs_root, dev, > &reset_fops); > - > - return 0; > } > diff --git a/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c b/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c > index 6650f478b226..41b461128bbc 100644 > --- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c > +++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c > @@ -259,17 +259,9 @@ static struct drm_info_list mdp5_debugfs_list[] = { > > static int mdp5_kms_debugfs_init(struct msm_kms *kms, struct drm_minor *minor) > { > - struct drm_device *dev = minor->dev; > - int ret; > - > - ret = drm_debugfs_create_files(mdp5_debugfs_list, > - ARRAY_SIZE(mdp5_debugfs_list), > - minor->debugfs_root, minor); > - > - if (ret) { > - DRM_DEV_ERROR(dev->dev, "could not install mdp5_debugfs_list\n"); > - return ret; > - } > + drm_debugfs_create_files(mdp5_debugfs_list, > + ARRAY_SIZE(mdp5_debugfs_list), > + minor->debugfs_root, minor); > > return 0; > } > diff --git a/drivers/gpu/drm/msm/msm_debugfs.c b/drivers/gpu/drm/msm/msm_debugfs.c > index 1c74381a4fc9..3c958f311bbc 100644 > --- a/drivers/gpu/drm/msm/msm_debugfs.c > +++ b/drivers/gpu/drm/msm/msm_debugfs.c > @@ -214,31 +214,22 @@ int msm_debugfs_late_init(struct drm_device *dev) > return ret; > } > > -int msm_debugfs_init(struct drm_minor *minor) > +void msm_debugfs_init(struct drm_minor *minor) > { > struct drm_device *dev = minor->dev; > struct msm_drm_private *priv = dev->dev_private; > - int ret; > + int ret = 0; > > - ret = drm_debugfs_create_files(msm_debugfs_list, > - ARRAY_SIZE(msm_debugfs_list), > - minor->debugfs_root, minor); > - > - if (ret) { > - DRM_DEV_ERROR(dev->dev, "could not install msm_debugfs_list\n"); > - return ret; > - } > + drm_debugfs_create_files(msm_debugfs_list, > + ARRAY_SIZE(msm_debugfs_list), > + minor->debugfs_root, minor); > > debugfs_create_file("gpu", S_IRUSR, minor->debugfs_root, > dev, &msm_gpu_fops); > > if (priv->kms && priv->kms->funcs->debugfs_init) { > - ret = priv->kms->funcs->debugfs_init(priv->kms, minor); > - if (ret) > - return ret; > + priv->kms->funcs->debugfs_init(priv->kms, minor); > } > - > - return ret; > } > #endif > > diff --git a/drivers/gpu/drm/msm/msm_debugfs.h b/drivers/gpu/drm/msm/msm_debugfs.h > index 2b91f8c178ad..ef58f66abbb3 100644 > --- a/drivers/gpu/drm/msm/msm_debugfs.h > +++ b/drivers/gpu/drm/msm/msm_debugfs.h > @@ -8,7 +8,7 @@ > #define __MSM_DEBUGFS_H__ > > #ifdef CONFIG_DEBUG_FS > -int msm_debugfs_init(struct drm_minor *minor); > +void msm_debugfs_init(struct drm_minor *minor); > #endif > > #endif /* __MSM_DEBUGFS_H__ */ > diff --git a/drivers/gpu/drm/msm/msm_gpu.h b/drivers/gpu/drm/msm/msm_gpu.h > index be5bc2e8425c..6ccae4ba905c 100644 > --- a/drivers/gpu/drm/msm/msm_gpu.h > +++ b/drivers/gpu/drm/msm/msm_gpu.h > @@ -57,7 +57,7 @@ struct msm_gpu_funcs { > void (*show)(struct msm_gpu *gpu, struct msm_gpu_state *state, > struct drm_printer *p); > /* for generation specific debugfs: */ > - int (*debugfs_init)(struct msm_gpu *gpu, struct drm_minor *minor); > + void (*debugfs_init)(struct msm_gpu *gpu, struct drm_minor *minor); > #endif > unsigned long (*gpu_busy)(struct msm_gpu *gpu); > struct msm_gpu_state *(*gpu_state_get)(struct msm_gpu *gpu); > -- > 2.25.0 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch