u are trying to ask for a physically continuous 2^5 * 4K or 128KB memory, it is pretty hard to find high order memory when u memory usage is like that. try to load u module earlier or ask for low order memory. ming On Tue, 2006-04-18 at 03:34 +0530, Abu M. Muttalib wrote: > Hi, > > I am running linux kernel 2.6 on an embedded system. > In my application I > have executed the following command > system ("cat /proc/meminfo") > I see the following > > MemTotal: 13864 kB > MemFree: 664 kB > Buffers: 1588 kB > Cached: 5452 kB > SwapCached: 0 kB > Active: 5280 kB > Inactive: 3720 kB > HighTotal: 0 kB > HighFree: 0 kB > LowTotal: 13864 kB > LowFree: 664 kB > SwapTotal: 0 kB > SwapFree: 0 kB > Dirty: 0 kB > Writeback: 0 kB > Mapped: 4664 kB > Slab: 1596 kB > CommitLimit: 6932 kB > Committed_AS: 22300 kB > PageTables: 172 kB > VmallocTotal: 630784 kB > VmallocUsed: 262576 kB > VmallocChunk: 366588 kB > > Then subsequently I am inserting one module i get the > "page allocation failure" > > and I get the following error message tho' kernel... > > *************************************************************** > > insmod: page allocation failure. order:5, mode:0xd0 > Mem-info: > DMA per-cpu: > cpu 0 hot: low 2, high 6, batch 1 used:5 > cpu 0 cold: low 0, high 2, batch 1 used:1 > Normal per-cpu: empty > HighMem per-cpu: empty > Free pages: 1216kB (0kB HighMem) > Active:1494 inactive:674 dirty:0 writeback:0 > unstable:0 free:304 slab:401 > mapped:1259 pagetables:46 > DMA free:1216kB min:512kB low:640kB high:768kB > active:5976kB inactive:2696kB > present:16384kB pages_scanned:0 all_unreclaimable? no > lowmem_reserve[]: 0 0 0 > Normal free:0kB min:0kB low:0kB high:0kB active:0kB > inactive:0kB present:0kB > pages_scanned:0 all_unreclaimable? no > lowmem_reserve[]: 0 0 0 > HighMem free:0kB min:128kB low:160kB high:192kB > active:0kB inactive:0kB > present:0kB pages_scanned:0 all_unreclaimable? no > lowmem_reserve[]: 0 0 0 > DMA: 18*4kB 51*8kB 28*16kB 1*32kB 2*64kB 1*128kB > 0*256kB 0*512kB 0*1024kB = > 1216kB > Normal: empty > HighMem: empty > Swap cache: add 0, delete 0, find 0/0, race 0+0 > Free swap = 0kB > Total swap = 0kB > Free swap: 0kB > 4096 pages of RAM > 382 free pages > 701 reserved pages > 401 slab pages > 1570 pages shared > 0 pages swap cached > > *************************************************************** > > Now I again run the command > system ("cat /proc/meminfo") > and now I see the following: > > MemTotal: 13864 kB > MemFree: 1524 kB > Buffers: 1244 kB > Cached: 5224 kB > SwapCached: 0 kB > Active: 5776 kB > Inactive: 2672 kB > HighTotal: 0 kB > HighFree: 0 kB > LowTotal: 13864 kB > LowFree: 1524 kB > SwapTotal: 0 kB > SwapFree: 0 kB > Dirty: 0 kB > Writeback: 0 kB > Mapped: 4676 kB > Slab: 1604 kB > CommitLimit: 6932 kB > Committed_AS: 22168 kB > PageTables: 172 kB > VmallocTotal: 630784 kB > VmallocUsed: 262560 kB > VmallocChunk: 366588 kB > > Is there any clue? I have some 650 KB free before > inserting the module and > after that some 1.5 MB free memory space, and still I > am not able to insert > the module. > > Why it's so? Any help will be highly appreciated. > > ~Abu. > > -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/