On 9/9/24 10:10, Stephen Rothwell wrote: > Hi all, > > On Mon, 9 Sep 2024 17:12:20 +1000 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: >> >> The following commits are also in the vfs-brauner tree as different >> commits (but the same patches): >> >> c0390d541128 ("fs: pack struct file") >> ea566e18b4de ("fs: use kmem_cache_create_rcu()") >> d345bd2e9834 ("mm: add kmem_cache_create_rcu()") >> e446f18e98e8 ("mm: remove unused argument from create_cache()") >> 0f389adb4b80 ("mm: Removed @freeptr_offset to prevent doc warning") >> >> These are commits >> >> f2b8943e64a8 ("fs: pack struct file") >> d1e381aa30cb ("fs: use kmem_cache_create_rcu()") >> ba8108d69e5b ("mm: add kmem_cache_create_rcu()") >> a85ba9858175 ("mm: remove unused argument from create_cache()") >> 6e016babce7c ("mm: Removed @freeptr_offset to prevent doc warning") >> >> in the vfs-brauner tree. >> >> These duplicates are causing unnecessary comflicts ... > > So, maybe my merge resolutions were not sufficient, because that then > failed to build (powerpc ppc64_defconfig): > > mm/slab_common.c: In function 'create_cache': > mm/slab_common.c:238:13: error: 'freeptr_offset' undeclared (first use in this function); did you mean 'freeptr_t'? > 238 | if (freeptr_offset != UINT_MAX && > | ^~~~~~~~~~~~~~ > | freeptr_t > mm/slab_common.c:238:13: note: each undeclared identifier is reported only once for each function it appears in > mm/slab_common.c: At top level: > mm/slab_common.c:389:20: warning: no previous prototype for 'kmem_cache_create_rcu' [-Wmissing-prototypes] > 389 | struct kmem_cache *kmem_cache_create_rcu(const char *name, unsigned int size, > | ^~~~~~~~~~~~~~~~~~~~~ > mm/slab_common.c: In function 'kmem_cache_create_rcu': > mm/slab_common.c:393:16: error: implicit declaration of function 'do_kmem_cache_create_usercopy'; did you mean 'kmem_cache_create_usercopy'? [-Wimplicit-function-declaration] > 393 | return do_kmem_cache_create_usercopy(name, size, freeptr_offset, 0, > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | kmem_cache_create_usercopy > mm/slab_common.c:393:16: error: returning 'int' from a function with return type 'struct kmem_cache *' makes pointer from integer without a cast [-Wint-conversion] > 393 | return do_kmem_cache_create_usercopy(name, size, freeptr_offset, 0, > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 394 | flags | SLAB_TYPESAFE_BY_RCU, 0, 0, > | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 395 | NULL); > | ~~~~~ > > So I used the slab tree from next-20240906 for today in the hope that > the duplications will be taken care of and the whole things becomes > clearer. I'm confused how did that help if slab tree didn't change since 20240906 and the commit ids meanwhile changed on the vfs side?