fs_context: drop the unused lsm_flags member
authorOndrej Mosnacek <omosnace@redhat.com>
Thu, 16 Mar 2023 13:07:51 +0000 (14:07 +0100)
committerChristian Brauner (Microsoft) <brauner@kernel.org>
Thu, 16 Mar 2023 13:38:28 +0000 (14:38 +0100)
This isn't ever used by VFS now, and it couldn't even work. Any FS that
uses the SECURITY_LSM_NATIVE_LABELS flag needs to also process the
value returned back from the LSM, so it needs to do its
security_sb_set_mnt_opts() call on its own anyway.

Signed-off-by: Ondrej Mosnacek <omosnace@redhat.com>
Signed-off-by: Christian Brauner (Microsoft) <brauner@kernel.org>
Documentation/filesystems/mount_api.rst
fs/nfs/super.c
include/linux/fs_context.h
include/linux/security.h

index 63204d2..9aaf6ef 100644 (file)
@@ -79,7 +79,6 @@ context.  This is represented by the fs_context structure::
                unsigned int            sb_flags;
                unsigned int            sb_flags_mask;
                unsigned int            s_iflags;
-               unsigned int            lsm_flags;
                enum fs_context_purpose purpose:8;
                ...
        };
index 05ae236..397c096 100644 (file)
@@ -1274,9 +1274,6 @@ int nfs_get_tree_common(struct fs_context *fc)
                if (ctx->clone_data.sb->s_flags & SB_SYNCHRONOUS)
                        fc->sb_flags |= SB_SYNCHRONOUS;
 
-       if (server->caps & NFS_CAP_SECURITY_LABEL)
-               fc->lsm_flags |= SECURITY_LSM_NATIVE_LABELS;
-
        /* Get a superblock - note that we may end up sharing one that already exists */
        fc->s_fs_info = server;
        s = sget_fc(fc, compare_super, nfs_set_super);
index 5469ffe..ff6341e 100644 (file)
@@ -104,7 +104,6 @@ struct fs_context {
        unsigned int            sb_flags;       /* Proposed superblock flags (SB_*) */
        unsigned int            sb_flags_mask;  /* Superblock flags that were changed */
        unsigned int            s_iflags;       /* OR'd with sb->s_iflags */
-       unsigned int            lsm_flags;      /* Information flags from the fs to the LSM */
        enum fs_context_purpose purpose:8;
        enum fs_context_phase   phase:8;        /* The phase the context is in */
        bool                    need_free:1;    /* Need to call ops->free() */
index 5984d0d..db9b659 100644 (file)
@@ -68,7 +68,7 @@ struct watch_notification;
 /* If capable is being called by a setid function */
 #define CAP_OPT_INSETID BIT(2)
 
-/* LSM Agnostic defines for fs_context::lsm_flags */
+/* LSM Agnostic defines for security_sb_set_mnt_opts() flags */
 #define SECURITY_LSM_NATIVE_LABELS     1
 
 struct ctl_table;