btrfs: sanitize security_mnt_opts use
authorAl Viro <viro@zeniv.linux.org.uk>
Mon, 10 Dec 2018 22:19:21 +0000 (17:19 -0500)
committerAl Viro <viro@zeniv.linux.org.uk>
Fri, 21 Dec 2018 16:47:08 +0000 (11:47 -0500)
commita65001e8a4d465693d0191297a6fd864c96b3147
tree7acb5223eea40be8e9f2089e654738f06630a0ac
parent8d64124a6a93ec68fda6f781e48a7b95d9dd17d9
btrfs: sanitize security_mnt_opts use

1) keeping a copy in btrfs_fs_info is completely pointless - we never
use it for anything.  Getting rid of that allows for simpler calling
conventions for setup_security_options() (caller is responsible for
freeing mnt_opts in all cases).

2) on remount we want to use ->sb_remount(), not ->sb_set_mnt_opts(),
same as we would if not for FS_BINARY_MOUNTDATA.  Behaviours *are*
close (in fact, selinux sb_set_mnt_opts() ought to punt to
sb_remount() in "already initialized" case), but let's handle
that uniformly.  And the only reason why the original btrfs changes
didn't go for security_sb_remount() in btrfs_remount() case is that
it hadn't been exported.  Let's export it for a while - it'll be
going away soon anyway.

Reviewed-by: David Howells <dhowells@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/btrfs/ctree.h
fs/btrfs/super.c
security/security.c