tree: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git debugfs_cleanup head: 44bb83b556b01215b8d22a1f5a6f2dff0a394ad3 commit: 44bb83b556b01215b8d22a1f5a6f2dff0a394ad3 [1/1] drm: make .debugfs_init and drm_debugfs_create_files() return void config: x86_64-defconfig (attached as .config) compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0 reproduce: git checkout 44bb83b556b01215b8d22a1f5a6f2dff0a394ad3 # save the attached .config to linux build tree make ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kbuild test robot All error/warnings (new ones prefixed by >>): >> drivers/gpu/drm/drm_debugfs.c:232:5: error: conflicting types for 'drm_debugfs_remove_files' int drm_debugfs_remove_files(const struct drm_info_list *files, int count, ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/gpu/drm/drm_debugfs.c:35:0: include/drm/drm_debugfs.h:86:6: note: previous declaration of 'drm_debugfs_remove_files' was here void drm_debugfs_remove_files(const struct drm_info_list *files, ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from include/linux/linkage.h:7:0, from include/linux/fs.h:5, from include/linux/debugfs.h:15, from drivers/gpu/drm/drm_debugfs.c:26: drivers/gpu/drm/drm_debugfs.c:253:15: error: conflicting types for 'drm_debugfs_remove_files' EXPORT_SYMBOL(drm_debugfs_remove_files); ^ include/linux/export.h:98:21: note: in definition of macro '___EXPORT_SYMBOL' extern typeof(sym) sym; \ ^~~ include/linux/export.h:155:34: note: in expansion of macro '__EXPORT_SYMBOL' #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "") ^~~~~~~~~~~~~~~ include/linux/export.h:158:29: note: in expansion of macro '_EXPORT_SYMBOL' #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "") ^~~~~~~~~~~~~~ >> drivers/gpu/drm/drm_debugfs.c:253:1: note: in expansion of macro 'EXPORT_SYMBOL' EXPORT_SYMBOL(drm_debugfs_remove_files); ^~~~~~~~~~~~~ In file included from drivers/gpu/drm/drm_debugfs.c:35:0: include/drm/drm_debugfs.h:86:6: note: previous declaration of 'drm_debugfs_remove_files' was here void drm_debugfs_remove_files(const struct drm_info_list *files, ^~~~~~~~~~~~~~~~~~~~~~~~ -- >> drivers/gpu/drm/i915/i915_debugfs.c:2179:6: error: conflicting types for 'i915_debugfs_register' void i915_debugfs_register(struct drm_i915_private *dev_priv) ^~~~~~~~~~~~~~~~~~~~~ In file included from drivers/gpu/drm/i915/i915_debugfs.c:42:0: drivers/gpu/drm/i915/i915_debugfs.h:15:5: note: previous declaration of 'i915_debugfs_register' was here int i915_debugfs_register(struct drm_i915_private *dev_priv); ^~~~~~~~~~~~~~~~~~~~~ -- drivers/gpu/drm/i915/display/intel_display_debugfs.c: In function 'intel_display_debugfs_register': >> drivers/gpu/drm/i915/display/intel_display_debugfs.c:1943:9: error: void value not ignored as it ought to be return drm_debugfs_create_files(intel_display_debugfs_list, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ARRAY_SIZE(intel_display_debugfs_list), ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ minor->debugfs_root, minor); ~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/gpu/drm/i915/display/intel_display_debugfs.c:1946:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ vim +/drm_debugfs_remove_files +232 drivers/gpu/drm/drm_debugfs.c 28a62277e06f93 Ben Gamari 2009-02-17 230 28a62277e06f93 Ben Gamari 2009-02-17 231 7d74795b740135 Lespiau, Damien 2013-10-17 @232 int drm_debugfs_remove_files(const struct drm_info_list *files, int count, 28a62277e06f93 Ben Gamari 2009-02-17 233 struct drm_minor *minor) 28a62277e06f93 Ben Gamari 2009-02-17 234 { 28a62277e06f93 Ben Gamari 2009-02-17 235 struct list_head *pos, *q; 28a62277e06f93 Ben Gamari 2009-02-17 236 struct drm_info_node *tmp; 28a62277e06f93 Ben Gamari 2009-02-17 237 int i; 28a62277e06f93 Ben Gamari 2009-02-17 238 b3e067c0b27619 Marcin Slusarz 2011-11-09 239 mutex_lock(&minor->debugfs_lock); 28a62277e06f93 Ben Gamari 2009-02-17 240 for (i = 0; i < count; i++) { b3e067c0b27619 Marcin Slusarz 2011-11-09 241 list_for_each_safe(pos, q, &minor->debugfs_list) { 28a62277e06f93 Ben Gamari 2009-02-17 242 tmp = list_entry(pos, struct drm_info_node, list); 28a62277e06f93 Ben Gamari 2009-02-17 243 if (tmp->info_ent == &files[i]) { 28a62277e06f93 Ben Gamari 2009-02-17 244 debugfs_remove(tmp->dent); 28a62277e06f93 Ben Gamari 2009-02-17 245 list_del(pos); 9a298b2acd771d Eric Anholt 2009-03-24 246 kfree(tmp); 28a62277e06f93 Ben Gamari 2009-02-17 247 } 28a62277e06f93 Ben Gamari 2009-02-17 248 } 28a62277e06f93 Ben Gamari 2009-02-17 249 } b3e067c0b27619 Marcin Slusarz 2011-11-09 250 mutex_unlock(&minor->debugfs_lock); 28a62277e06f93 Ben Gamari 2009-02-17 251 return 0; 28a62277e06f93 Ben Gamari 2009-02-17 252 } 28a62277e06f93 Ben Gamari 2009-02-17 @253 EXPORT_SYMBOL(drm_debugfs_remove_files); 28a62277e06f93 Ben Gamari 2009-02-17 254 :::::: The code at line 232 was first introduced by commit :::::: 7d74795b740135b7c89269ce21be51cc5b328de6 drm: Constify struct drm_info_list * arguments :::::: TO: Lespiau, Damien :::::: CC: Dave Airlie --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org