diff --git a/kernel/signal.c b/kernel/signal.c
index c4dd66436fc58e467d1f54bc1973dbded601d060..a1eb44dc9ff523d16401a00f9b65117b96bfee01 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -2113,6 +2113,7 @@ static void ptrace_stop(int exit_code, int why, int clear_code, kernel_siginfo_t
 		preempt_enable_no_resched();
 		cgroup_enter_frozen();
 		freezable_schedule();
+		cgroup_leave_frozen(true);
 	} else {
 		/*
 		 * By the time we got the lock, our tracer went away.