memory problem for s5pv210 porting

Adam Lackorzynski adam at os.inf.tu-dresden.de
Wed Feb 27 22:44:15 CET 2013


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                 adam at os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/




More information about the l4-hackers mailing list