The following fixes partly solve the problems triggered by the noux stress test introduced by nfeske in issue #208. * The check whether a capability exists in the Cap_map, and its insertion, has to be done atomically * While removing a capability it is looked up in the Cap_map via its id, check whether the found capability pointer is the same like the looked up, otherwise the wrong capability gets freed * When a local capability is un- resp. marshalled, only the local pointer gets transfered, not the redundant capability id * Introduce several assertions and warnings to facilitate debugging |
||
---|---|---|
.. | ||
cap_alloc.h | ||
cap_map.h | ||
ipc_msgbuf.h | ||
ipc_pager.h | ||
ipc.h | ||
native_types.h | ||
thread_state.h |