On Wed Dec 07, 2011 at 15:56:59 -0800, Chen Tian wrote:
Can some one tell me when a msg tag is set to the error code i.e., tag = 0x8000 ?
I have a parent thread A, which creates a child thread B, and thread C is assigned as B's pager and exception handler.
When thread A destroys B via l4_task_unmap, thread C is invoked and the tag returned from ipc_reply_and_wait cannot pass l4_msgtag_has_error check. This is very weird. When B dies, will it generate some sort of exceptions which will cause C to be invoked?
If I ask thread C to ignore this IPC message, it seems fine because thread B is anyway destroyed. But I am still wondering if I did something logically wrong or the tag error can be safely ignored, especially in the situation I described above?
Which error code does l4_error() return?
Adam