You are ettempting to spawn subprocess(es) from inside your application (or from a lib you are using). According to this, an additional co-process is being also spawned - the semaphore tracker, responsible for returning back to system all named semaphores your subprocesses create. This is kind of important task, because if the named semaphore is leaked (not deleted), the associated system resource is occupied until next reboot.
The system has limited number of those resources, because they are located in the shared memory. You can ignore this if you are sure, that the number of named semaphores used by your app is not significant.
Notice that every type of lock defined in the multiprocessing module is a named semaphore under the hood. Moreover, every instance of multiprocessing.Queue, Barier, etc. instantiate their own locks.
If for instance you are spawning many processes (workers) and each of them is instantiating multiprocessing.Lock or multiprocessing.RLock, the number of leaked (not deleted) named semaphores may be significant, exhausting the limit quickly, causing your app or others to run out of resources.
Here is a link to an explanation of those issues: https://docs.python.org/3/library/multiprocessing.html?highlight=semaphore%20tracker#contexts-and-start-methods