|
@@ -5781,12 +5781,13 @@ struct cgroup_subsys_state *css_tryget_online_from_dir(struct dentry *dentry,
|
|
|
struct cgroup_subsys *ss)
|
|
|
{
|
|
|
struct kernfs_node *kn = kernfs_node_from_dentry(dentry);
|
|
|
+ struct file_system_type *s_type = dentry->d_sb->s_type;
|
|
|
struct cgroup_subsys_state *css = NULL;
|
|
|
struct cgroup *cgrp;
|
|
|
|
|
|
/* is @dentry a cgroup dir? */
|
|
|
- if (dentry->d_sb->s_type != &cgroup_fs_type || !kn ||
|
|
|
- kernfs_type(kn) != KERNFS_DIR)
|
|
|
+ if ((s_type != &cgroup_fs_type && s_type != &cgroup2_fs_type) ||
|
|
|
+ !kn || kernfs_type(kn) != KERNFS_DIR)
|
|
|
return ERR_PTR(-EBADF);
|
|
|
|
|
|
rcu_read_lock();
|