This is initially created as a bug but it needs first some investigation to discover if it is really necessary to acquire the write lock when the patching resource is read. If it is unnecessary, we should remove this need.
The following operation is acquiring the write lock:
It potentially will block if there is any other operation that has already acquired the lock. One consequence found due to this issue was HAL could block and hang if an HC is starting and the user clicks on 'Patching' menu entry. It was fixed in HAL, where an HC being restarted is no longer shown in the Patching menu.
The main problem seems to be in PatchStreamResourceOperationStepHandler, which is the parent handler used for the handlers that manage patching operations. This parent handler is always acquiring the write lock.