lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 1 Jun 2021 14:14:11 +0200
From:   Vlastimil Babka <vbabka@...e.cz>
To:     kernel test robot <lkp@...el.com>,
        Faiyaz Mohammed <faiyazm@...eaurora.org>, cl@...ux.com,
        penberg@...nel.org, rientjes@...gle.com, iamjoonsoo.kim@....com,
        akpm@...ux-foundation.org, linux-mm@...ck.org,
        linux-kernel@...r.kernel.org, greg@...ah.com, glittao@...il.com
Cc:     kbuild-all@...ts.01.org
Subject: Re: [PATCH v8] mm: slub: move sysfs slab alloc/free interfaces to
 debugfs

On 6/1/21 1:08 PM, kernel test robot wrote:
> 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@...el.com>
> 
> 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

Oh, right, CONFIG_SLOB.
How about moving the ifdef-ed declaration from slub-def.h to mm/slab.h and
discarding the slab-def.h empty one. That will take care of SLOB too.

> 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@lists.01.org
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ