HomeFreeBSD

Despite system call deregistration drains the threads executing System V
rS209580Unpublished

Unpublished Commit ยท Learn More

No further details are available.

Description

Despite system call deregistration drains the threads executing System V
shm syscalls, and initial check for the number of allocated segments
in the module deinitialization code, the following might happen:

after the check for active segment, while waiting for threads to
leave some other syscall, shmget(2) is called. Then, we can end
up with the shared segment that cannot be detached since sysvshm
module is unloaded.

Prevent the leak by rechecking and disclaiming a reference to the vm
object owned by sysvshm module, that might have grown during the drain.

Tested by: pho
Reviewed by: jhb
MFC after: 1 month

Details

Provenance
kibAuthored on
Parents
rS209579: Count number of threads that enter and leave dynamically registered
Branches
Unknown
Tags
Unknown

Event Timeline