[okl4-developer] A doubt about blocking receive
Matthew Warton
mwarton at ok-labs.com
Thu Aug 30 17:38:40 EST 2007
Hi Dhiraj,
You are correct in this case, t1 will remain blocked waiting for t2,
even if t2 is deleted. However, If t1 was blocked sending to t2, it
would be aborted and returned failure. The reason for the difference
is that the kernel does not internally track waiters on a specific
thread.
If you really need t1 to be woken up in this case (ie it is not a
bug, but a normal operation of the system that this should happen),
you should request a timeout from the timer server before doing the
call that is expected to fail, and ensure that you use an IPC where
you may receive from multiple threads.
Can you give us more details on the particular problem this is causing?
Thanks,
Matthew Warton
On 30/08/2007, at 1:25 PM, Kalamkar, Dhiraj D wrote:
> Hi,
>
>
>
> Suppose a thread t1 is blocked on receive IPC operation and waiting
> message from thread t2. Meanwhile, t2 exits without doing send IPC
> to t1 or terminated by pager because of invalid page fault before
> doing send operation. Does it abort t1’s IPC receive and returns
> failure or t1 remains blocked?
>
>
>
> Thanks,
>
> Dhiraj
>
> _______________________________________________
> Developer mailing list
> Developer at okl4.org
> https://lists.okl4.org/mailman/listinfo/developer
More information about the Developer
mailing list