Cross-compilation of lx_hybrid components

Christian Helmuth christian.helmuth at genode-labs.com
Tue Oct 29 11:41:01 CET 2019


Hi Roman,

great to hear you managed to fit this square peg into a round hole
(and broke all other platforms ;-).

On Tue, Oct 29, 2019 at 11:23:36 CET, Roman Iten wrote:
> The problem I care about is that scenarios using hybrid components don't
> work at runtime. For example run/lx_fs or run/netperf_lwip (uses
> linux_nic_drv):
> 
> ```
> [10:49:20.418] Warning: blocking canceled in entrypoint constructor
> ```
> 
> Any idea whats wrong?

Actually, no. The information you provided about what happens could be
called scarce at best. The core output about "blocking canceled" you
cite happens if the core Linux process happens to receive a POSIX
signal, which is in many cases SIGCHLD because any child exited.

I suggest you try to investigate this suspicion using the following
hints.

- Analyze the syslog looking for messages about segmentation or
  protection faults.
- Pause execution of linux_nic_drv early on startup by calling magic
    extern "C" void wait_for_continue();
  which waits for input on stdin.
- Try to attach a debugger to linux_nic_drv on the target.
- Maybe replace linux_nic_drv with a very simple hybrid Hello-World
  program.

Good luck
-- 
Christian Helmuth
Genode Labs

https://www.genode-labs.com/ · https://genode.org/
https://twitter.com/GenodeLabs · /ˈdʒiː.nəʊd/

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth



More information about the users mailing list