memory issue?
Jack Liu
Jack_liu at usish.com
Thu May 20 17:08:52 EST 2004
I found the problem. It is because of memory configuration problem.
I have misconfiged the memory organization. However it still made me
confused that when configuration is wrong, U-boot can still detect
memory as 64M and relocate itself to the area near 64M boundary.
======= 2004-05-19 11:19:00 Origianl message=======
> I encountered a problem.
> 1) Linux works fine on MPC8241 platform with 32Mbyte memory. (I used
> swap partition in disk)
> 2) When working in MPC8241 with 64Mbyte memory, system crash when
> execuate memory-hungry program such as samba and lvm. The
> following is the log info:
>
> First , U-boot relocates itself to 3fe1000 and works fine.
>
> Then, Transferring control to Linux (at address 00000000) ...
> Loading kernel ......Memory BAT mapping: BAT2=64Mb, BAT3=0Mb, residual: 0Mb
> Linux version 2.4.21
> ...
> On node 0 totalpages: 16384
> zone(0): 16384 pages.
> zone(1): 0 pages.
> zone(2): 0 pages.
> OpenPIC Version 1.2 (1 CPUs and 6 IRQ sources) at fdfcd000
> OpenPIC timer frequency is 66.000000 MHz
> time_init: decrementer frequency = 16.000000 MHz
> Calibrating delay loop... 106.49 BogoMIPS
> Memory: 61860k available (1996k kernel code, 784k data, 84k init, 0k highmem)
> Dentry cache hash table entries: 8192 (order: 4, 65536 bytes)
> Inode cache hash table entries: 4096 (order: 3, 32768 bytes)
> Mount cache hash table entries: 512 (order: 0, 4096 bytes)
> Buffer-cache hash table entries: 4096 (order: 2, 16384 bytes)
> Page-cache hash table entries: 16384 (order: 4, 65536 bytes)
> .........
> Freeing unused kernel memory: 84k init
> INIT: version 2.84 booting
>
> After booting OK, when user access the system through samba or execute lvm command, system crash.
> lvm vgdisplay
> Oops: kernel access of bad area, sig: 11
> NIP: C0046F3C XER: 00000000 LR: C0047E3C SP: C2C93E70 REGS: c2c93dc0 TRAP: 0300 Not tainted
>MSR: 00009032 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 11
>DAR: 0000008C, DSISR: 20000000
>TASK = c2c92000[577] 'lvm' Last syscall: 106
>last math c2c92000 last altivec 00000000
>GPR00: C0047E3C C2C93E70 C2C92000 00000000 00000001 C2C93F18 C3905010 C3FC0E20
>GPR08: C3905000 00000009 00001000 C23C6368 44000428 10075EF8 00000000 00000000
>GPR16: 00000000 00000000 00000000 00000000 00009032 02C93F40 00000000 C0005E90
>GPR24: C0005C00 00000001 00000009 C3905001 00000000 C2C93F18 C2C93F18 C3905000
>Call backtrace:
>C2C93F18 C0047E3C C0047E84 C0048078 C00483E0 C0043B50 C0005C5C
>00000008 1001FB14 1001FA6C 1001FB78 1001FA6C 1001FC64 1002046C
>1001A67C 1001A788 10036A30 100131EC 10016118 1000BF6C 1000C800
>0FE7304C 00000000
>
>This is the top command:
> 7:07pm up 7 min, 1 user, load average: 0.03, 0.17, 0.12
>23 processes: 22 sleeping, 1 running, 0 zombie, 0 stopped
>CPU states: 0.7 user, 0.5 system, 0.0 nice, 98.6 idle
>Mem: 61944K av, 28132K used, 33812K free, 0K shrd, 1784K buff
>Swap: 498004K av, 0K used, 498004K free 16504K cached
>
> PID USER PRI NI SIZE RSS SHARE STAT TIME COMMAND
> 580 root 15 0 1108 1104 924 R 0.9 1.7 0:00 top
> 1 root 8 0 540 540 484 S 0.0 0.8 1:08 init
> 2 root 9 0 0 0 0 SW 0.0 0.0 0:00 keventd
> 3 root 19 19 0 0 0 SWN 0.0 0.0 0:00 ksoftirqd_CPU0
> 4 root 9 0 0 0 0 SW 0.0 0.0 0:00 kswapd
> 5 root 9 0 0 0 0 SW 0.0 0.0 0:00 bdflush
> 6 root 9 0 0 0 0 SW 0.0 0.0 0:00 kupdated
> 8 root 9 0 0 0 0 SW 0.0 0.0 0:00 khubd
> 12 root 9 0 0 0 0 SW 0.0 0.0 0:00 kcopyd
> 7:08pm up 8 min, 1 user, load average: 0.00, 0.12, 0.10
>24 processes: 23 sleeping, 1 running, 0 zombie, 0 stopped
>CPU states: 0.9 user, 0.0 system, 0.0 nice, 99.0 idle
>Mem: 61944K av, 29500K used, 32444K free, 0K shrd, 1804K buff
>Swap: 498004K av, 0K used, 498004K free 17540K cached
>
>Oops: kernel access of bad area, sig: 11
>NIP: C003D210 XER: 00000000 LR: C003E410 SP: C2C93E30 REGS: c2c93d80 TRAP: 0300 Not tainted
>MSR: 00009032 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 11
>DAR: 2BC1BFB7, DSISR: 20000000
>TASK = c2c92000[586] 'smbd' Last syscall: 4
>last math c2c92000 last altivec 00000000
>GPR00: 00000D4C C2C93E30 C2C92000 2BC1BFB3 0003AE16 00001000 00000303 00000FFF
>GPR08: 0003AE16 C02A0000 00E82B8B C03A4D4C 44000862 100FAC68 00000000 C26338AC
>GPR16: C2CCC240 C0067968 C2C93E48 00001000 00000000 C23A0000 C2633840 00000001
>GPR24: 0000002F C3134360 00000000 C0340094 00000FBF C2C93E48 00000000 00001000
>Call backtrace:
>C2C93E48 C003E85C C003F25C C0067E10 C002E028 C003B4F8 C0005C5C
>1000CA38 1000D004 10026764 1003AAE0 1003ABBC 1003ADCC 1003B904
>1000365C 0FE4D04C 00000000
>
> I test the memory using simplt write-and-read method and it is
>OK. Therefore I think it is not becuase of the memory configuration
>problem. And since system works fine with 32M memory so it is not
>becuase of programs. I am confused about this. Can anyone give me some
>clues?
= = = = = = = = = = = = = = = = = = = =
Best regards
Jack Liu
R&D Dept. USI(Shanghai) Inc.
Tel: +86-21-58966996x1155
Fax: +86-21-58967931
Email: Jack_liu at usish.com
http://www.usi.com.tw
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
More information about the Linuxppc-embedded
mailing list