[GSoC 2014 : ARM Port] Week #15

Blog post by dnivra on Sun, 2014-08-03 10:53

During the last week, the fixes to prevent the kernel from overwriting the loader were reviewed and it was suggested that instead of moving the entire memory map to a much higher address, it is better to reserve space for the kernel before the loader and adjust the memory map accordingly. I’ve been working on this for a good part of the week but have been running into issues. It is probable that the new memory map isn’t correct for some reason. I’ve been following few suggestions for debugging but seems like they are not very helpful. I’ll be spending a good part of this week on this issue mostly.

I also managed to fix the issue that gARMPagingMethod being uninitialized by borrowing the fix from the corresponding x86 code(not merged yet). After that, KDL faults when trying to print the backtrace because some of the memory locations are no longer mapped by the MMU. These are mostly stack frames of functions belonging to the loader. I believe the fix is to use debug_memcpy when get_next_frame is called(just like in x86) but I have not been able to test this.