Re: linux-next: build failure after merge of the vfs-brauner tree
From: Mike Marshall
Date: Tue Mar 18 2025 - 11:26:25 EST
Hi Stephen... is there something I should do differently? I might be
using an older
version of the patch, it was sent to me around three weeks ago.
>>Caused by commit
>> 50fb0a7f43c0 ("orangefs: Move s_kmod_keyword_mask_map to
orangefs-debugfs.c")
>>merging badly with commit
>> 063f8013373a ("orangefs: move s_kmod_keyword_mask_map[] into debugfs.c")
One has "Move" the one I'm using has "move", as if the author (Arnd)
made an update
to the patch and maybe I missed it...?
-Mike
On Mon, Mar 17, 2025 at 7:13 PM Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> Hi all,
>
> After merging the vfs-brauner tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
>
> fs/orangefs/orangefs-debugfs.c:101:8: error: redefinition of 'struct __keyword_mask_s'
> 101 | struct __keyword_mask_s {
> | ^~~~~~~~~~~~~~~~
> fs/orangefs/orangefs-debugfs.c:48:8: note: originally defined here
> 48 | struct __keyword_mask_s {
> | ^~~~~~~~~~~~~~~~
> fs/orangefs/orangefs-debugfs.c:119:32: error: conflicting types for 's_kmod_keyword_mask_map'; have 'struct __keyword_mask_s[]'
> 119 | static struct __keyword_mask_s s_kmod_keyword_mask_map[] = {
> | ^~~~~~~~~~~~~~~~~~~~~~~
> fs/orangefs/orangefs-debugfs.c:66:32: note: previous definition of 's_kmod_keyword_mask_map' with type 'struct __keyword_mask_s[18]'
> 66 | static struct __keyword_mask_s s_kmod_keyword_mask_map[] = {
> | ^~~~~~~~~~~~~~~~~~~~~~~
> fs/orangefs/orangefs-debugfs.c:140:18: error: redefinition of 'num_kmod_keyword_mask_map'
> 140 | static const int num_kmod_keyword_mask_map = (int)
> | ^~~~~~~~~~~~~~~~~~~~~~~~~
> fs/orangefs/orangefs-debugfs.c:87:18: note: previous definition of 'num_kmod_keyword_mask_map' with type 'int'
> 87 | static const int num_kmod_keyword_mask_map = (int)
> | ^~~~~~~~~~~~~~~~~~~~~~~~~
>
> Caused by commit
>
> 50fb0a7f43c0 ("orangefs: Move s_kmod_keyword_mask_map to orangefs-debugfs.c")
>
> merging badly with commit
>
> 063f8013373a ("orangefs: move s_kmod_keyword_mask_map[] into debugfs.c")
>
> from the orangefs tree.
>
> I have applied the following merge fix patch.
>
> From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> Date: Tue, 18 Mar 2025 09:43:37 +1100
> Subject: [PATCH] fix up for bad merge of "orangefs: Move
> s_kmod_keyword_mask_map to orangefs-debugfs.c"
>
> with "orangefs: move s_kmod_keyword_mask_map[] into debugfs.c" from the
> oragngefs tree.
>
> Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> ---
> fs/orangefs/orangefs-debugfs.c | 43 ----------------------------------
> 1 file changed, 43 deletions(-)
>
> diff --git a/fs/orangefs/orangefs-debugfs.c b/fs/orangefs/orangefs-debugfs.c
> index 98b52ceaf011..f7095c91660c 100644
> --- a/fs/orangefs/orangefs-debugfs.c
> +++ b/fs/orangefs/orangefs-debugfs.c
> @@ -97,49 +97,6 @@ static const int num_kmod_keyword_mask_map = (int)
> #define ORANGEFS_VERBOSE "verbose"
> #define ORANGEFS_ALL "all"
>
> -/* a private internal type */
> -struct __keyword_mask_s {
> - const char *keyword;
> - __u64 mask_val;
> -};
> -
> -/*
> - * Map all kmod keywords to kmod debug masks here. Keep this
> - * structure "packed":
> - *
> - * "all" is always last...
> - *
> - * keyword mask_val index
> - * foo 1 0
> - * bar 2 1
> - * baz 4 2
> - * qux 8 3
> - * . . .
> - */
> -static struct __keyword_mask_s s_kmod_keyword_mask_map[] = {
> - {"super", GOSSIP_SUPER_DEBUG},
> - {"inode", GOSSIP_INODE_DEBUG},
> - {"file", GOSSIP_FILE_DEBUG},
> - {"dir", GOSSIP_DIR_DEBUG},
> - {"utils", GOSSIP_UTILS_DEBUG},
> - {"wait", GOSSIP_WAIT_DEBUG},
> - {"acl", GOSSIP_ACL_DEBUG},
> - {"dcache", GOSSIP_DCACHE_DEBUG},
> - {"dev", GOSSIP_DEV_DEBUG},
> - {"name", GOSSIP_NAME_DEBUG},
> - {"bufmap", GOSSIP_BUFMAP_DEBUG},
> - {"cache", GOSSIP_CACHE_DEBUG},
> - {"debugfs", GOSSIP_DEBUGFS_DEBUG},
> - {"xattr", GOSSIP_XATTR_DEBUG},
> - {"init", GOSSIP_INIT_DEBUG},
> - {"sysfs", GOSSIP_SYSFS_DEBUG},
> - {"none", GOSSIP_NO_DEBUG},
> - {"all", GOSSIP_MAX_DEBUG}
> -};
> -
> -static const int num_kmod_keyword_mask_map = (int)
> - (ARRAY_SIZE(s_kmod_keyword_mask_map));
> -
> /*
> * An array of client_debug_mask will be built to hold debug keyword/mask
> * values fetched from userspace.
> --
> 2.45.2
>
> --
> Cheers,
> Stephen Rothwell