What is a semaphore wait?
Semaphores throttle access to a resource.  If it's not available a process has to wait until it is.  Very long waits can signal that you have a deadlock situation and something needs to be killed to break it up.

https://stackoverflow.com/questions/2332765/lock-mutex-semaphore-whats-the-difference


  A lock allows only one thread to enter the part that's locked and the
  lock is not shared with any other processes.
  
  A mutex is the same as a lock but it can be system wide (shared by
  multiple processes).
  
  A semaphore does the same as a mutex but allows x number of threads to
  enter, this can be used for example to limit the number of cpu, io or
  ram intensive tasks running at the same time.