Hi Sebastian,
this was actually helpful. It was catching a Region_conflict exception thrown by Allocator_avl_base::alloc_addr(). The requested address was in a very low range so that no matching block could be found. Actually, it was LD_TEXT_ADDR, hence modifying this value in spec-hw_zynq.mk accordingly solved my problem.
Cheers Johannes
On Fri, 10 Apr 2015 11:05:03 +0200 Sebastian Sumpf <Sebastian.Sumpf@...1...> wrote:
Hi Johannes,
On 04/09/2015 06:05 PM, Johannes Schlatow wrote:
Hi,
as previously mentioned, I'm running Genode on Zynq-based hardware...which is progressing quite well by the way ;-)
Unfortunately, I got stuck at using the dynamic linker, i.e. 'make run/ldso' fails with the following output:
Genode 14.11-93-ge5ef216 int main(): --- create local services --- int main(): --- start init --- int main(): transferred 1020 MB to init int main(): --- init created, waiting for exit condition --- [init -> test-ldso] LD: Failed to load program [init] virtual void Genode::Child_policy::exit(int): child "test-ldso" exited with exit value -1
As I'm quite unfamiliar with dynamic linking in general, I have no clue what's wrong here. Also, having a quick look at the corresponding lines in the ldso didn't shed much light on this matter. Thus, I'd be very glad to get a few hints from you guys. Any ideas what I need to check to narrow this down?
If you are interested in the zynq-related code, you can find it at: https://github.com/ValiValpas/genode/tree/zynq
That is hard to tell remotely, could you comment out the try and the catch statement that print the error message and send me the output?
Thanks,
Sebastian