Re: [PATCH v8] mm: slub: move sysfs slab alloc/free interfaces to debugfs

From: kernel test robot
Date: Tue Jun 01 2021 - 07:09:02 EST


Hi Faiyaz,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v5.13-rc4]
[cannot apply to hnaz-linux-mm/master next-20210601]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url: https://github.com/0day-ci/linux/commits/Faiyaz-Mohammed/mm-slub-move-sysfs-slab-alloc-free-interfaces-to-debugfs/20210601-180903
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git c2131f7e73c9e9365613e323d65c7b9e5b910f56
config: i386-tinyconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/0day-ci/linux/commit/9540acc4691d680b7124d8daa1a2eb98a97ee19a
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Faiyaz-Mohammed/mm-slub-move-sysfs-slab-alloc-free-interfaces-to-debugfs/20210601-180903
git checkout 9540acc4691d680b7124d8daa1a2eb98a97ee19a
# save the attached .config to linux build tree
make W=1 ARCH=i386

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

mm/slab_common.c: In function 'slab_caches_to_rcu_destroy_workfn':
>> mm/slab_common.c:452:3: error: implicit declaration of function 'debugfs_slab_release' [-Werror=implicit-function-declaration]
452 | debugfs_slab_release(s);
| ^~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors


vim +/debugfs_slab_release +452 mm/slab_common.c

427
428 static void slab_caches_to_rcu_destroy_workfn(struct work_struct *work)
429 {
430 LIST_HEAD(to_destroy);
431 struct kmem_cache *s, *s2;
432
433 /*
434 * On destruction, SLAB_TYPESAFE_BY_RCU kmem_caches are put on the
435 * @slab_caches_to_rcu_destroy list. The slab pages are freed
436 * through RCU and the associated kmem_cache are dereferenced
437 * while freeing the pages, so the kmem_caches should be freed only
438 * after the pending RCU operations are finished. As rcu_barrier()
439 * is a pretty slow operation, we batch all pending destructions
440 * asynchronously.
441 */
442 mutex_lock(&slab_mutex);
443 list_splice_init(&slab_caches_to_rcu_destroy, &to_destroy);
444 mutex_unlock(&slab_mutex);
445
446 if (list_empty(&to_destroy))
447 return;
448
449 rcu_barrier();
450
451 list_for_each_entry_safe(s, s2, &to_destroy, list) {
> 452 debugfs_slab_release(s);
453 kfence_shutdown_cache(s);
454 #ifdef SLAB_SUPPORTS_SYSFS
455 sysfs_slab_release(s);
456 #else
457 slab_kmem_cache_release(s);
458 #endif
459 }
460 }
461

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip