I have a coldFire53281??? How do I?


--



在2009-01-06,"Allon Stern" <allon.st...@argonst.com> 写道:
>I have a custom Coldfire 5282 board with 32MB of SDRAM and 64MB of  
>NOR flash (Numonyx (nee Intel Strataflash) P30).
>Since the 5282 can only address 16MB per chip select, we use GPIOs to  
>drive the high address bits and a custom MTD map to twiddle the  
>GPIOs. This means I have no point() function in the MTD.
>
>Firstly, performance kind of rots. We have a PXA270 (regular linux)  
>with the same flash chip (but no special mapping driver, and it has  
>point()) so maybe that accounts for the 5x slower writes I'm having  
>on no-MMU linux.
>
>The biggest problem I'm having, though, is that when I try stressing  
>the flash, such as by copying an enormous file (50MB) to it, I  
>eventually get memory allocation failures (order 8 allocation).  
>Judging by the stats below, I believe this is fragmentation of free  
>space, which can't be managed by the OS without an MMU.
>
>Anyone have any ideas on how to manage this? Is it simply a matter of  
>"don't write to JFFS2 too fast to let the buffers catch up" ?
>In our actual usage pattern, we won't be writing more than about 10MB  
>at a go (storing an application load), and logging in dribs and  
>drabs, or is there some way to put a ceiling on kernel cache  
>allocations? Is this a result of having a large flash-to-SDRAM ratio?
>
>(note that /boot is an NFS volume)
>
>M4:~ # cp /boot/linux-2.6.26.7-m68k.tar.bz2 /var/flash
>Write of 4164 bytes at 0x039c7db8 failed. returned -30, retlen 584
>Write of 4164 bytes at 0x039c8dfc failed. returned -30, retlen 0
>Not marking the space at 0x039c8dfc as dirty because the flash driver  
>returned retlen zero
>cp: write error: Read-only file system
>M4:~ #
>M4:~ # ls -l /var/flash
>ls: page allocation failure. order:8, mode:0x40d0
>Stack from 01303d84:
>         001e3340 0003fd8e 001b71f1 01dbb264 00000008 000040d0  
>0000000a 01c02918
>         00000000 00000000 00000000 00000010 01c02920 00000010  
>01c02910 01c00b80
>         01303e58 00000000 00000000 01302000 01302008 01302000  
>00000080 000240d0
>         00000100 00000010 000001e7 001e3344 00000000 00000000  
>00000000 0003fe38
>         000040d0 00000008 001e3340 00000000 0004931a 000040d0  
>00000008 001e3340
>         0000f0f4 00002009 000822a8 000822a8 00000002 00000000  
>01c00b80 01cdb0c0
>CONFIG_FRAME_POINTER disabled, no symbolic call trace
>
>Mem-info:
>Normal per-cpu:
>CPU    0: hi:    0, btch:   1 usd:   0
>Active:23 inactive:2831 dirty:0 writeback:0 unstable:0
>  free:2382 slab:2284 mapped:0 pagetables:0 bounce:0
>Normal free:9528kB min:720kB low:900kB high:1080kB active:92kB  
>inactive:11324kB present:32
>512kB pages_scanned:0 all_unreclaimable? no
>lowmem_reserve[]: 0 0 0
>Normal: 66*4kB 58*8kB 52*16kB 37*32kB 26*64kB 16*128kB 6*256kB  
>3*512kB 0*1024kB 0*2048kB 0
>*4096kB = 9528kB
>2854 total pagecache pages
>8192 pages of RAM
>2406 free pages
>597 reserved pages
>0 pages shared
>0 pages swap cached
>Allocation of length 533160 from process 151 failed
>Normal per-cpu:
>CPU    0: hi:    0, btch:   1 usd:   0
>Active:23 inactive:2831 dirty:0 writeback:0 unstable:0
>  free:2382 slab:2284 mapped:0 pagetables:0 bounce:0
>Normal free:9528kB min:720kB low:900kB high:1080kB active:92kB  
>inactive:11324kB present:32
>512kB pages_scanned:0 all_unreclaimable? no
>lowmem_reserve[]: 0 0 0
>Normal: 66*4kB 58*8kB 52*16kB 37*32kB 26*64kB 16*128kB 6*256kB  
>3*512kB 0*1024kB 0*2048kB 0
>*4096kB = 9528kB
>2854 total pagecache pages
>Unable to allocate RAM for process text/data, errno 12
>151: Bus error
>M4:~ #
>
>_______________________________________________
>uClinux-dev mailing list
>uClinux-dev@uclinux.org
>http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
>This message was resent by uclinux-dev@uclinux.org
>To unsubscribe see:
>http://mailman.uclinux.org/mailman/options/uclinux-dev
_______________________________________________
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to