LSM: split ->sb_set_mnt_opts() out of ->sb_kern_mount()

... leaving the "is it kernel-internal" logics in the caller.

Reviewed-by: David Howells <[email protected]>
Signed-off-by: Al Viro <[email protected]>
This commit is contained in:
Al Viro 2018-12-05 11:58:35 -05:00
commit a10d7c22b3
6 changed files with 13 additions and 34 deletions

View file

@ -1275,10 +1275,16 @@ mount_fs(struct file_system_type *type, int flags, const char *name, void *data)
smp_wmb();
sb->s_flags |= SB_BORN;
error = security_sb_kern_mount(sb, flags, &opts);
error = security_sb_set_mnt_opts(sb, &opts, 0, NULL);
if (error)
goto out_sb;
if (!(flags & MS_KERNMOUNT)) {
error = security_sb_kern_mount(sb);
if (error)
goto out_sb;
}
/*
* filesystems should never set s_maxbytes larger than MAX_LFS_FILESIZE
* but s_maxbytes was an unsigned long long for many releases. Throw