mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-23 15:32:25 +00:00
b66716d278
There existed a race when 'wait_and_dispatch_one_signal' is called form a RPC context, because the 'signal_proxy' or 'main' will block and the signal semaphore, when the EP then calls 'wait_and_dispatch_one_signal', the signal proxy is woken up ands sends an RPC to the EP, leading to a dead lock if no further signal arrive, because the EP will then remain blocked in the signal semaphore. Therefore, for this case, the signal proxy will now perform a semaphore up operation and does not perform an RPC if the EP is within 'wait_and_dispatch_one_signal'. |
||
---|---|---|
.. | ||
doc | ||
etc | ||
include | ||
lib/mk | ||
ports | ||
run | ||
src |