forked from Minki/linux
x86/intel_rdt: Respect read and write access
By default, if the opener has CAP_DAC_OVERRIDE, a kernfs file can be opened regardless of RW permissions. Writing to a kernfs file will thus succeed even if permissions are 0000. It's required to restrict the actions that can be performed on a resource group from userspace based on the mode of the resource group. This restriction will be done through a modification of the file permissions. That is, for example, if a resource group is locked then the user cannot add tasks to the resource group. For this restriction through file permissions to work it has to be ensured that the permissions are always respected. To do so the resctrl filesystem is created with the KERNFS_ROOT_EXTRA_OPEN_PERM_CHECK flag that will result in open(2) failing with -EACCESS regardless of CAP_DAC_OVERRIDE if the permission does not have the respective read or write access. Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: fenghua.yu@intel.com Cc: tony.luck@intel.com Cc: vikas.shivappa@linux.intel.com Cc: gavin.hindman@intel.com Cc: jithu.joseph@intel.com Cc: dave.hansen@intel.com Cc: hpa@zytor.com Link: https://lkml.kernel.org/r/26f4fc25f110bfc07c2d2c8b2c4ee904922fedf7.1529706536.git.reinette.chatre@intel.com
This commit is contained in:
parent
bb9fec69cb
commit
21220bb199
@ -2545,7 +2545,8 @@ static int __init rdtgroup_setup_root(void)
|
||||
int ret;
|
||||
|
||||
rdt_root = kernfs_create_root(&rdtgroup_kf_syscall_ops,
|
||||
KERNFS_ROOT_CREATE_DEACTIVATED,
|
||||
KERNFS_ROOT_CREATE_DEACTIVATED |
|
||||
KERNFS_ROOT_EXTRA_OPEN_PERM_CHECK,
|
||||
&rdtgroup_default);
|
||||
if (IS_ERR(rdt_root))
|
||||
return PTR_ERR(rdt_root);
|
||||
|
Loading…
Reference in New Issue
Block a user