Error for l4android with Genode 14.11

Stefan Kalkowski stefan.kalkowski at ...1...
Mon Feb 2 11:46:58 CET 2015


On 01/28/2015 02:56 PM, li94575 wrote:
> Hi all,
> When I run l4android (3.5) with the latest Genode, I got an error, the
> args for l4android in run script is "mem=512M console=ttys0
> l4x_rd=root-lc.gz".  

I wonder that it compiles for you using Genode's latest release? The
recent e-mail by Zachary showed, and I can confirm that l4android
doesn't even compile.

The simple reason is that we don't use l4android at all, and was not
tested it in the past :-(. I will investigate whether it is easy to fix
the current issues, and dependend on that provide a fix. However, the
current outdated version of L4android does not make sense from my point
of view. Therefore, we should either remove L4Android from the Genode
repository, or alternatively it needs to be upgraded and integrated into
our testing environment - which means resources that are bound to that
task. Any opinions from other developers? Or is somebody like
li94575 or Zachary willing to upgrade the current version?

> Part of log is as follows:
> [init -> l4android] Main thread running, waiting...
> [init -> l4android] l4re_global_env:0
> [init -> l4android] Main memory size: 512MB
> unmapping of managed dataspaces not yet supported
> [init -> l4android] Main memory: virt:20000000 to 3fffffff [524288 KiB]
> [init -> l4android] Main memory: phys:0x00000000 to 0x20000000, size:
> 536870912
> [init -> l4android] Filling lower ptabs...
> [init -> l4android] Done (0 entries).
> [init -> l4android] l4x_register_pointer_section: addr = 01000000 size =
> 5242880
> [init -> l4android] text: virt: 1000000 to 14fffff [5120 KiB]
> [init -> l4android] Cannot determine physical address for dataspace Binary!
> [init -> l4android] error: failed to get physical address for 1000000.
> virtual void
> Genode::Signal_session_component::submit(Genode::signal_context_capability,
> unsigned int): invalid signal-contex capability
> virtual void Genode::Pager_activation_base::entry(): Could not resolve
> pf=3fffff000 ip=1000e88
> It seems that the virtual address(0x20000000 ~ 0x3fffffff) has not been
> mapped to actual physical address. So I compared the L4Linux support library
> with previous versions, I found the funtion "l4re_ma_alloc" (in
> ports-foc/src/lib/l4lx/ has changed, and l4android
> will use the
> function for memory allocation. Can somebody tells me why make that
> adjustment?  Is it the reason why l4android produces that error?

Yes there were changes regarding the main memory allocation/mapping of
the L4Linux guest within the L4Re emulation library. Especially, it
changed that not all memory is allocated once, but gets allocated on
demand. Thereby prior patches to L4Linux need to be reverted.

I've opened an issue at our issue tracker, let's discuss things there:


> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming. The Go Parallel Website,
> sponsored by Intel and developed in partnership with Slashdot Media, is your
> hub for all things parallel software development, from weekly thought
> leadership blogs to news, videos, case studies, tutorials and more. Take a
> look and join the conversation now.
> _______________________________________________
> genode-main mailing list
> genode-main at

Stefan Kalkowski
Genode Labs ยท

More information about the users mailing list