2016-09-21 8:20 GMT-04:00 Christian Helmuth <christian.helm...@genode-labs.com>: >> Need 05df2000 bytes to relocate modules. >> Relocating to 7980d000: >> Copying 483168 bytes... > [...] >> Copying 114820 bytes... > > If my calculations from this output are correct the boot modules cover > RAM from 0x7980d000 to 0x7f5e9000. Maybe there's a collision in this > region? > >> paul@arcturus:~$ cat /proc/meminfo >> MemTotal: 2041768 kB > > Could you please compare the region above against > > cat /proc/iomem' > > and check if it fits completely into "System RAM"? Ehhh... At first I thought there was a problem... but i think it goes just before ACPI Non-volatile Storage 00100000-7f5ffbff : System RAM 01000000-015cb5d4 : Kernel code 015cb5d5-01b10aff : Kernel data 01c67000-01d34fff : Kernel bss 7f5ffc00-7f601bff : ACPI Non-volatile Storage 7f601c00-7f603bff : RAM buffer 7f603c00-7fffffff : reserved 7f800000-7ff7ffff : Graphics Stolen Memory
It sure looks like a Nova bug (had time to load modules, but not to show Nova welcome message). In src/init I see: void init (mword mbi) { // Setup 0-page and 1-page memset (reinterpret_cast<void *>(&PAGE_0), 0, PAGE_SIZE); memset (reinterpret_cast<void *>(&PAGE_1), ~0u, PAGE_SIZE); for (void (**func)() = &CTORS_G; func != &CTORS_E; (*func++)()) ; Hip::build (mbi); for (void (**func)() = &CTORS_C; func != &CTORS_G; (*func++)()) ; // Now we're ready to talk to the world Console::print ("\fNOVA Microhypervisor v%d-%07lx (%s): %s %s [%s]\n", CFG_VER, reinterpret_cast<mword>(&GIT_VER), ARCH, __DATE__, __TIME__, COMPILER_STRING); Idt::build(); Gsi::setup(); Acpi::setup(); Console_vga::con.setup(); Keyb::init(); } I believe Hip::(build(mbr) reads the module, and I suppose do the relocations shown. I am thinking about adding some Console::print inside the loop: for (void (**func)() = &CTORS_C; func != &CTORS_G; (*func++)()) ; which I barely understand as calling each functions in an array of Constructors (CTORS_C). Wish I would knew where CTORS_C is defined, but I guess I need not to know. I am not so good with coding... so it might be just to the limit of my abilities to do and test that. ------------------------------------------------------------------------------ _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main