6 ms·
> The proper fix is to keep some PID values allocated. Do not free a PID value until all the children of it have died. Any fork bomb at all will exhaust the pi
by philsnow 6y ago
> The proper fix is to keep some PID values allocated. Do not free a PID value until all the children of it have died.
Any fork bomb at all will exhaust the pid graveyard, wouldn't it? You could change pid_t to 64 bits but then the pid graveyard would take a lot of memory in the kernel.
- souprock 6y agoFor an actual fork bomb, nothing ends up in the PID graveyard. No process ever dies. The fork bomb by itself is a problem, even without a PID graveyard. Process limits are required to stop a fork bomb. For other situations, just keep the direct parents. Worst case, that doubles the PID usage.