HomeFreeBSD

Fix a corner case in ID bitmap management.

Description

Fix a corner case in ID bitmap management.

If all IDs from trypid to pid_max were used as pids, the code would enter
a loop which would be infinite if none of the IDs could become free (e.g.
they all belong to processes which did not transitioned to zombie).

Fixes: r341684 ("Manage process-related IDs with bitmaps")

Sponsored by: The FreeBSD Foundation

Details

Provenance
mjgAuthored on
Parents
rS341722: proc: postpone proc unlock until after reporting with kqueue
Branches
Unknown
Tags
Unknown