]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
fs: namespace: Avoid -Wflex-array-member-not-at-end warning
authorGustavo A. R. Silva <gustavoars@kernel.org>
Thu, 27 Mar 2025 00:17:44 +0000 (18:17 -0600)
committerChristian Brauner <brauner@kernel.org>
Fri, 28 Mar 2025 09:18:34 +0000 (10:18 +0100)
-Wflex-array-member-not-at-end was introduced in GCC-14, and we are
getting ready to enable it, globally.

Move the conflicting declaration to the end of the structure. Notice
that `struct statmount` is a flexible structure --a structure that
contains a flexible-array member.

Fix the following warning:

fs/namespace.c:5329:26: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end]

Signed-off-by: "Gustavo A. R. Silva" <gustavoars@kernel.org>
Link: https://lore.kernel.org/r/Z-SZKNdCiAkVJvqm@kspp
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/namespace.c

index 6100e5b962a6c7bc6f2ce0127072b4503bc47169..16292ff760c93345e9db36c17981b062bd4b71f3 100644 (file)
@@ -5326,8 +5326,10 @@ struct kstatmount {
        struct mnt_idmap *idmap;
        u64 mask;
        struct path root;
-       struct statmount sm;
        struct seq_file seq;
+
+       /* Must be last --ends in a flexible-array member. */
+       struct statmount sm;
 };
 
 static u64 mnt_to_attr_flags(struct vfsmount *mnt)