thread cancel_blocking usage, kernels

Steven Harp steven.harp at ...486...
Thu Oct 12 00:26:54 CEST 2017


The Genode book suggests that an RPC caller can protect itself from blocking
in a stalled server by creating a watchdog thread to monitor the process of
the call, and cancel it if it takes too long.

Is there a robust/canonical example of using cancel_blocking in this way?

My experiment with this (Genode 17.08, x86_32) seems to work as expected--but,
only with the OKL4 kernel!?    With nova, hw, and seL4, the cancel_blocking()
method executes but seemingly to no effect: the thread continues to wait on
the (contrived) very slow RPC call, which eventually completes.

Suggestions?

// Steve Harp




More information about the users mailing list