blocking canceled in entrypoint constructor

Johannes Kliemann kliemann at ...543...
Fri Jan 12 13:09:25 CET 2018


Hi all,

When running Genode on Linux as PID 1 I get the warning `blocking
canceled in entrypoint constructor`. This seems to happen only when
running as init process. When I run the same configuration on Linux with
the usual user land this doesn't happen. I have also applied the patch
to [1] (I have tested this on 17.11 where it is applied anyway).
Changing the underlying Linux kernel did not help.

I could trace the issue to repos/base-linux/src/lib/base/ipc.cc:421 [2]
where lx_recvmsg returns -EINTR. The proposed way to handle this error
according to the GNU reference [3] is to retry the syscall. Yet Genode
does not and throws an exception.

Is there any signal that only the init process receives that isn't
handled properly in Genode (sorry if this is slightly off-topic)?

Why does Genode handle -EINTR with an exception and not the way proposed
in the GNU manual?

Regards,
Johannes Kliemann

[1]: https://github.com/genodelabs/genode/issues/2521
[2]:
https://github.com/genodelabs/genode/blob/f44edd407bf674bfad11accad8319d5f66110b44/repos/base-linux/src/lib/base/ipc.cc#L421
[3]:
https://www.gnu.org/software/libc/manual/html_node/Interrupted-Primitives.html#Interrupted-Primitives




More information about the users mailing list