cgroup: rename cgroup_css_from_dir() to css_from_dir() and update its syntax
[platform/adaptation/renesas_rcar/renesas_kernel.git] / kernel / cgroup.c
index ef43e3f..921b138 100644 (file)
@@ -5700,34 +5700,28 @@ struct cgroup_subsys_state *css_lookup(struct cgroup_subsys *ss, int id)
 EXPORT_SYMBOL_GPL(css_lookup);
 
 /**
- * cgroup_css_from_dir - get corresponding css from file open on cgroup dir
- * @f: directory file of interest
- * @id: subsystem id of interest
+ * css_from_dir - get corresponding css from the dentry of a cgroup dir
+ * @dentry: directory dentry of interest
+ * @ss: subsystem of interest
  *
  * Must be called under RCU read lock.  The caller is responsible for
  * pinning the returned css if it needs to be accessed outside the RCU
  * critical section.
  */
-struct cgroup_subsys_state *cgroup_css_from_dir(struct file *f, int id)
+struct cgroup_subsys_state *css_from_dir(struct dentry *dentry,
+                                        struct cgroup_subsys *ss)
 {
        struct cgroup *cgrp;
-       struct inode *inode;
-       struct cgroup_subsys_state *css;
 
        WARN_ON_ONCE(!rcu_read_lock_held());
 
-       inode = file_inode(f);
-       /* check in cgroup filesystem dir */
-       if (inode->i_op != &cgroup_dir_inode_operations)
+       /* is @dentry a cgroup dir? */
+       if (!dentry->d_inode ||
+           dentry->d_inode->i_op != &cgroup_dir_inode_operations)
                return ERR_PTR(-EBADF);
 
-       if (id < 0 || id >= CGROUP_SUBSYS_COUNT)
-               return ERR_PTR(-EINVAL);
-
-       /* get cgroup */
-       cgrp = __d_cgrp(f->f_dentry);
-       css = cgroup_css(cgrp, id);
-       return css ? css : ERR_PTR(-ENOENT);
+       cgrp = __d_cgrp(dentry);
+       return cgroup_css(cgrp, ss->subsys_id) ?: ERR_PTR(-ENOENT);
 }
 
 /**