Merge 1a323ea535
("x86: get rid of 'errret' argument to __get_user_xyz() macross") into android-mainline
In a quest to divide up the 5.7-rc1 merge chunks into reviewable pieces. Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> Change-Id: I2e5960415348c06e8f10e10cbefb3ee5c3745e73
This commit is contained in:
@@ -142,8 +142,11 @@ static int __init checkreqprot_setup(char *str)
|
||||
{
|
||||
unsigned long checkreqprot;
|
||||
|
||||
if (!kstrtoul(str, 0, &checkreqprot))
|
||||
if (!kstrtoul(str, 0, &checkreqprot)) {
|
||||
selinux_checkreqprot_boot = checkreqprot ? 1 : 0;
|
||||
if (checkreqprot)
|
||||
pr_warn("SELinux: checkreqprot set to 1 via kernel parameter. This is deprecated and will be rejected in a future kernel release.\n");
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
__setup("checkreqprot=", checkreqprot_setup);
|
||||
@@ -700,6 +703,7 @@ static int selinux_set_mnt_opts(struct super_block *sb,
|
||||
if (!strcmp(sb->s_type->name, "debugfs") ||
|
||||
!strcmp(sb->s_type->name, "tracefs") ||
|
||||
!strcmp(sb->s_type->name, "binder") ||
|
||||
!strcmp(sb->s_type->name, "bpf") ||
|
||||
!strcmp(sb->s_type->name, "pstore"))
|
||||
sbsec->flags |= SE_SBGENFS;
|
||||
|
||||
@@ -1478,7 +1482,9 @@ static int inode_doinit_with_dentry(struct inode *inode, struct dentry *opt_dent
|
||||
/* Default to the fs superblock SID. */
|
||||
sid = sbsec->sid;
|
||||
|
||||
if ((sbsec->flags & SE_SBGENFS) && !S_ISLNK(inode->i_mode)) {
|
||||
if ((sbsec->flags & SE_SBGENFS) &&
|
||||
(!S_ISLNK(inode->i_mode) ||
|
||||
selinux_policycap_genfs_seclabel_symlinks())) {
|
||||
/* We must have a dentry to determine the label on
|
||||
* procfs inodes */
|
||||
if (opt_dentry) {
|
||||
@@ -2142,11 +2148,18 @@ static int selinux_quotactl(int cmds, int type, int id, struct super_block *sb)
|
||||
case Q_QUOTAOFF:
|
||||
case Q_SETINFO:
|
||||
case Q_SETQUOTA:
|
||||
case Q_XQUOTAOFF:
|
||||
case Q_XQUOTAON:
|
||||
case Q_XSETQLIM:
|
||||
rc = superblock_has_perm(cred, sb, FILESYSTEM__QUOTAMOD, NULL);
|
||||
break;
|
||||
case Q_GETFMT:
|
||||
case Q_GETINFO:
|
||||
case Q_GETQUOTA:
|
||||
case Q_XGETQUOTA:
|
||||
case Q_XGETQSTAT:
|
||||
case Q_XGETQSTATV:
|
||||
case Q_XGETNEXTQUOTA:
|
||||
rc = superblock_has_perm(cred, sb, FILESYSTEM__QUOTAGET, NULL);
|
||||
break;
|
||||
default:
|
||||
@@ -7134,6 +7147,7 @@ static __init int selinux_init(void)
|
||||
selinux_state.checkreqprot = selinux_checkreqprot_boot;
|
||||
selinux_ss_init(&selinux_state.ss);
|
||||
selinux_avc_init(&selinux_state.avc);
|
||||
mutex_init(&selinux_state.status_lock);
|
||||
|
||||
/* Set the security state for the initial task. */
|
||||
cred_init_security();
|
||||
|
Reference in New Issue
Block a user