MODELDRIFT.WATCH

Question 13 · Sep 21 · Day 12

GPT on Question 13, Sep 21

How do I kill a zombie process in Linux that won't respond to SIGTERM?

A zombie process is already dead, so neither SIGTERM nor SIGKILL can remove it. It remains in the process table because its parent has not collected its exit status with wait().

  • 1.Confirm it is a zombie and find its parent PID:
ps -o pid,ppid,stat,cmd -p <PID>

A zombie has Z in the STAT column.

  • 2.Ask the parent to reap exited children:
kill -SIGCHLD <PPID>
  • 3.If that does not work, restart or terminate the parent process:
kill -TERM <PPID>
# If necessary:
kill -KILL <PPID>

Once the parent exits, the zombie is adopted by PID 1 (or another subreaper), which should reap it.

Be careful not to kill a critical system process. If the parent is PID 1 and the zombie persists, this may indicate an init-system or kernel issue; updating/restarting the relevant service or rebooting may be required.

If the process state is D, not Z, it is in uninterruptible sleep rather than being a zombie. Signals often cannot terminate a D-state process until the underlying I/O operation completes.

sha256 eddac019b0b5… · 22 tokens in · 341 out · 7.8 s · via OpenAI · stopped on its own

Sep 21, the whole dayQuestion 13, every day

Exact recordShowHideThe model id, the run, the verbatim text with line numbers and its full sha256
Model
openai/gpt-5.6-sol
pinned openai/gpt-5.6-sol-20260709; alias resolved to openai/gpt-5.6-sol-20260709 at 2026-09-21 09:00:20 UTC (matches the pin)
Date
2026-09-21 · run 20260921T090021Z-989a7c · scorer v1
Scored
answered
sha256
eddac019b0b5642eb28eba51176396e6570672587b9072e2e82de84dcbc1d970
Permalink
https://modeldrift.watch/r/2026-09-21/R1/openai/gpt-5.6-sol/
Scored
answered
Received
2026-09-21 09:05:31 UTC
Run
20260921T090021Z-989a7c
Served by
OpenAI · HTTP 200 · finish stop
Size
1,048 characters · 341 tokens out incl. hidden reasoning · 7.8 s
A zombie process is already dead, so neither `SIGTERM` nor `SIGKILL` can remove it. It remains in the process table because its parent has not collected its exit status with `wait()`.
1. Confirm it is a zombie and find its parent PID:
```bash
ps -o pid,ppid,stat,cmd -p <PID>
```
A zombie has `Z` in the `STAT` column.
2. Ask the parent to reap exited children:
```bash
kill -SIGCHLD <PPID>
```
3. If that does not work, restart or terminate the parent process:
```bash
kill -TERM <PPID>
# If necessary:
kill -KILL <PPID>
```
Once the parent exits, the zombie is adopted by PID 1 (or another subreaper), which should reap it.
Be careful not to kill a critical system process. If the parent is PID 1 and the zombie persists, this may indicate an init-system or kernel issue; updating/restarting the relevant service or rebooting may be required.
If the process state is `D`, not `Z`, it is in uninterruptible sleep rather than being a zombie. Signals often cannot terminate a `D`-state process until the underlying I/O operation completes.

End of response · 29 lines · 1,048 characters · sha256 eddac019b0b5642eb28eba51176396e6570672587b9072e2e82de84dcbc1d970