The function css_alloc never return NULL, it may return normal pointer or error codes that made by ERR_PTR, so !css is always false, we need use IS_ERR to check it, and if this is true, we should use ERR_CAST handle it.
Signed-off-by: Xiongwei Song <sxwj...@me.com> --- kernel/cgroup/cgroup.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c index adac5b91d2b8..a442fd9ad744 100644 --- a/kernel/cgroup/cgroup.c +++ b/kernel/cgroup/cgroup.c @@ -4728,10 +4728,8 @@ static struct cgroup_subsys_state *css_create(struct cgroup *cgrp, lockdep_assert_held(&cgroup_mutex); css = ss->css_alloc(parent_css); - if (!css) - css = ERR_PTR(-ENOMEM); if (IS_ERR(css)) - return css; + return ERR_CAST(css); init_and_link_css(css, ss, cgrp); -- 2.15.1