MODELDRIFT.WATCH

Question 13 · Sep 25 · Day 16

GPT on Question 13, Sep 25

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

A zombie process cannot be killed—it is already dead. 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:
ps -o pid,ppid,stat,cmd -p <PID>

A zombie has Z in the STAT column.

  • 2.Ask the parent to reap its children:
kill -SIGCHLD <PPID>

This only works if the parent handles SIGCHLD correctly.

  • 3.If it remains, restart or terminate the parent process:
kill -TERM <PPID>
# Last resort:
kill -KILL <PPID>

When the parent exits, the zombie is adopted by PID 1 (or a subreaper), which should reap it. Be cautious: killing the parent may disrupt a service or other child processes; prefer restarting it through its service manager, for example:

sudo systemctl restart <service>

If the parent is your current shell, this may reap it:

wait <PID>

kill -9 <zombie-PID> has no effect. Zombies consume only a process-table entry, not CPU or normal process memory. If many accumulate, fix the parent application so it calls wait()/waitpid().

If STAT is D rather than Z, it is not a zombie—it is stuck in uninterruptible I/O and usually cannot be killed until the kernel operation returns.

sha256 d7ff97d292b5… · 22 tokens in · 518 out · 7.3 s · via OpenAI · stopped on its own

Sep 25, 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-25 09:00:06 UTC (matches the pin)
Date
2026-09-25 · run 20260925T090007Z-f08d1f · scorer v1
Scored
answered
sha256
d7ff97d292b503f9b1ddcbed8b9f155aaeeadc915823a096bf4ad88c93bbe366
Permalink
https://modeldrift.watch/r/2026-09-25/R1/openai/gpt-5.6-sol/
Scored
answered
Received
2026-09-25 09:05:17 UTC
Run
20260925T090007Z-f08d1f
Served by
OpenAI · HTTP 200 · finish stop
Size
1,262 characters · 518 tokens out incl. hidden reasoning · 7.3 s
A zombie process cannot be killed—it is already dead. 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:
```bash
ps -o pid,ppid,stat,cmd -p <PID>
```
A zombie has `Z` in the `STAT` column.
2. Ask the parent to reap its children:
```bash
kill -SIGCHLD <PPID>
```
This only works if the parent handles `SIGCHLD` correctly.
3. If it remains, restart or terminate the parent process:
```bash
kill -TERM <PPID>
# Last resort:
kill -KILL <PPID>
```
When the parent exits, the zombie is adopted by PID 1 (or a subreaper), which should reap it. Be cautious: killing the parent may disrupt a service or other child processes; prefer restarting it through its service manager, for example:
```bash
sudo systemctl restart <service>
```
If the parent is your current shell, this may reap it:
```bash
wait <PID>
```
`kill -9 <zombie-PID>` has no effect. Zombies consume only a process-table entry, not CPU or normal process memory. If many accumulate, fix the parent application so it calls `wait()`/`waitpid()`.
If `STAT` is `D` rather than `Z`, it is not a zombie—it is stuck in uninterruptible I/O and usually cannot be killed until the kernel operation returns.

End of response · 41 lines · 1,262 characters · sha256 d7ff97d292b503f9b1ddcbed8b9f155aaeeadc915823a096bf4ad88c93bbe366