"Since this usage prevents blocking, it’s possible to delete the while() loop in the implementation of fifo request write(), as it is never invoked. Further code reduction is possible by removing the relevant semaphore, as well as its initialization and destruction code."