From 1f4af2e456675c6226857ee0c8127ff4b3d1d18a Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Fri, 6 May 2022 14:01:22 +0900 Subject: [PATCH] core/slice: make slice_freezer_action() return 0 if freezing state is unchanged Fixes #23278. (cherry picked from commit d171e72e7afa11b238ba20758384d223b0c76e39) Related: #2047373 --- src/core/slice.c | 6 +----- src/core/unit.c | 2 ++ 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/core/slice.c b/src/core/slice.c index c10e830917..34f3c84bf9 100644 --- a/src/core/slice.c +++ b/src/core/slice.c @@ -395,11 +395,7 @@ static int slice_freezer_action(Unit *s, FreezerAction action) { return r; } - r = unit_cgroup_freezer_action(s, action); - if (r < 0) - return r; - - return 1; + return unit_cgroup_freezer_action(s, action); } static int slice_freeze(Unit *s) { diff --git a/src/core/unit.c b/src/core/unit.c index e2c61ce866..bd79578255 100644 --- a/src/core/unit.c +++ b/src/core/unit.c @@ -5622,6 +5622,8 @@ static int unit_freezer_action(Unit *u, FreezerAction action) { if (r <= 0) return r; + assert(IN_SET(u->freezer_state, FREEZER_FREEZING, FREEZER_THAWING)); + return 1; }