Re: memory problem for s5pv210 porting
Adam Lackorzynski <[email protected]>
| Newsgroups | gmane.comp.micro-kernel.l4.devel |
|---|---|
| Message-ID | <[email protected]> |
On Tue Feb 26, 2013 at 19:33:49 +0800, meng-qy wrote: > Hello,l4-hackers, > > We are working at porting fiasco to s5pv210 platform. Now, we > encounter a unstable problem when fiasco booting. Sometimes, the > system seems ok. But more often, the system dead in different > places when start moe. We trace the program and find that the system > halts in function "handle_page_fault" of > sigma0(dir=/l4/pkg/sigma0/server/src/memmap.cc). The log is > described more specifically as following: > > case 1: Page fault > ........ > Calibrating timer loop... done. > SIGMA0: Hello! > KIP @ 20002000 > allocated 4KB for maintenance structures > SIGMA0: Dump of all resource maps > RAM:------------------------ > [0:20000000;20000fff] > [0:20065000;2008ffff] > [0:20097000;20097fff] > [0:2009f000;2013ffff] > [4:20140000;20171fff] > [0:20172000;20177fff] > [4:20178000;2018efff] > [0:2018f000;21010fff] > [4:21011000;21011fff] > [0:21012000;210fffff] > [4:21100000;21133fff] > [0:21134000;3effffff] > IOMEM:---------------------- > [0:0;1fffffff] > [0:40000000;ffffffff] > SIGMA0: alloc addr ok, addr is 20140000 //which we add in func > handle_page_fault > SIGMA0: alloc addr ok, addr is 2017d000 > SIGMA0: alloc addr ok, addr is 2017c000 > SIGMA0: alloc addr ok, addr is 2016e000 > SIGMA0: alloc addr ok, addr is 2016f000 > SIGMA0: alloc addr ok, addr is 20169000 > SIGMA0: alloc addr ok, addr is 2016c000 > SIGMA0: alloc addr ok, addr is 2016b000 > MOE: Hello world > SIGMA0: Page fault, did not find page at 200020e0 for 4 > SIGMA0: Page fault, did not find page at 200020e0 for 4 > SIGMA0: Page fault, did not find page at 200020e0 for 4 > SIGMA0: Page fault, did not find page at 200020e0 for 4 > SIGMA0: Page fault, did not find page at 200020e0 for 4 // > endless loop > SIGMA0: Page fault, did not find page at 200020e0 for 4 The second case smells like cache/tlb issue but I wouldn't understand why this would be a problem. And the case above looks rather not like that. 20002000 is the kip and there should not be a page-fault there. In jdb, you should log page-faults (P*) to check (with shift-T) for any repeating patterns (e.g. same pc or similar). Adam -- Adam [email protected] Lackorzynski http://os.inf.tu-dresden.de/~adam/