Hi Praveen, Stefan isn't online these days. 'Genode::map_local()' uses the 'Kernel::core_pd()->platform_pd()->page_slab()' as backing store. This allocator is of the type 'Genode::Page_slab' as defined in 'base-hw/src/core/include/page_slab.h'. The class contains a member 'Slab_block _initial_sb' which is used for the first couple of allocations (especially for the allocation of the second slab block). Furthermore the page slab of the core PD is created via the 'unmanaged_singleton' utility in 'base-hw/src/core/kernel/kernel.cc'. Thus it should be located in the BSS. That said, it might be normal that you're observing a page-table base inside the program image. Is 0x10159000 inside your BSS? You can check this via 'genode-arm-objdump' or instrument the Page_slab::alloc method to check wether it uses the initial block for this page table.
Cheers Martin
On 08.08.2014 09:14, Praveen B wrote:
Hi Stefan, I am working along with Chirag to port Genode on imx6.
We inserted the existing RAM regions in Platform::_ram_regions.( We rechecked it with linux kernel source code for imx6) But still we are getting page fault on every access to new Rom_module.
I tried to track the memory allocation what I understood is, In map_local() call, when inserting into page tables in "_insert_second_level()" function in short_translation_table.h file of base-hw, slab->phys_addr() and slab->virt_addr() return 0 after kernel initialization. So it creates a new page table and inserting into it. Inserting the same values(phys:10000000, virt:1000) as arguments of map_local() function in platform.cc. When I print the address of new page table created, I found that it is in the range of Program Image.(address of pt is 10159000, and program image range is (10001000-10189fa4).
I wonder if the memory allotted is clashing with program memory. Or, Can it be the issue with MMDC controller of imx6? Because no other board in base-hw uses MMDC controller, do we need to implement the interface for MMDC in imx6?
Thanks and Regards
Praveen, IIT Madras
On Tue, Jul 29, 2014 at 6:43 PM, Stefan Kalkowski <stefan.kalkowski@...1... mailto:stefan.kalkowski@...1...> wrote:
Hi, On 07/28/2014 11:28 AM, chirag garg wrote: > Hi stefan, > > Thanks a lot in Advance, > > We are trying to debug the " Failed to communicate Thread Event ". And we > found that Platform is not getting Initialized, we are facing Problem in > the Platform constructor located in file : base-hw/src/coe/platform.cc > > In the Platform () constructor > > Rom_module * rom_module = new (core_mem_alloc()) > Rom_module(header->base, header->size, (const > char*)header->name); > > is not getting executed(giving page fault) . Do you know what could be the > problem ? Do you've inserted the right existent RAM regions within your Platform::_ram_regions definitions? If you added incorrect RAM regions the "core_mem_alloc()" allocator of core will insert invalid page table entries in kernel/core's page table, and any access to the memory of the new Rom_module (returned by core_mem_alloc()) will fault. But it's just guessing. Again, it is up to you to investigate what exact memory access is responsible for the fault. Regards Stefan > > > Regards > > Chirag Garg > IIT Madras , Rise Lab > > > > ------------------------------------------------------------------------------ > Infragistics Professional > Build stunning WinForms apps today! > Reboot your WinForms applications with our WinForms controls. > Build a bridge from your legacy apps to the future. > http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk > > > > _______________________________________________ > genode-main mailing list > genode-main@lists.sourceforge.net <mailto:genode-main@lists.sourceforge.net> > https://lists.sourceforge.net/lists/listinfo/genode-main > -- Stefan Kalkowski Genode Labs http://www.genode-labs.com/ · http://genode.org/ ------------------------------------------------------------------------------ Infragistics Professional Build stunning WinForms apps today! Reboot your WinForms applications with our WinForms controls. Build a bridge from your legacy apps to the future. http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net <mailto:genode-main@lists.sourceforge.net> https://lists.sourceforge.net/lists/listinfo/genode-main
Want fast and easy access to all the code in your enterprise? Index and search up to 200,000 lines of code with a free copy of Black Duck Code Sight - the same software that powers the world's largest code search on Ohloh, the Black Duck Open Hub! Try it now. http://p.sf.net/sfu/bds
genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main