mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-21 03:33:59 +08:00
cgroup: deal with dummp_top in cgroup_name() and cgroup_path()
My kernel fails to boot, because blkcg calls cgroup_path() while cgroupfs is not mounted. Fix both cgroup_name() and cgroup_path(). Signed-off-by: Li Zefan <lizefan@huawei.com> Signed-off-by: Tejun Heo <tj@kernel.org>
This commit is contained in:
parent
6534fd6c15
commit
cc045e3952
@ -487,13 +487,21 @@ struct cgroup_subsys_state *seq_css(struct seq_file *seq);
|
|||||||
|
|
||||||
static inline int cgroup_name(struct cgroup *cgrp, char *buf, size_t buflen)
|
static inline int cgroup_name(struct cgroup *cgrp, char *buf, size_t buflen)
|
||||||
{
|
{
|
||||||
return kernfs_name(cgrp->kn, buf, buflen);
|
/* dummy_top doesn't have a kn associated */
|
||||||
|
if (cgrp->kn)
|
||||||
|
return kernfs_name(cgrp->kn, buf, buflen);
|
||||||
|
else
|
||||||
|
return strlcpy(buf, "/", buflen);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline char * __must_check cgroup_path(struct cgroup *cgrp, char *buf,
|
static inline char * __must_check cgroup_path(struct cgroup *cgrp, char *buf,
|
||||||
size_t buflen)
|
size_t buflen)
|
||||||
{
|
{
|
||||||
return kernfs_path(cgrp->kn, buf, buflen);
|
/* dummy_top doesn't have a kn associated */
|
||||||
|
if (cgrp->kn)
|
||||||
|
return kernfs_path(cgrp->kn, buf, buflen);
|
||||||
|
strlcpy(buf, "/", buflen);
|
||||||
|
return (buflen <= 2) ? NULL : buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void pr_cont_cgroup_name(struct cgroup *cgrp)
|
static inline void pr_cont_cgroup_name(struct cgroup *cgrp)
|
||||||
|
Loading…
Reference in New Issue
Block a user