Re: Mem issues in 2.6.9 (ever since 2.6.9-rc3) and possible cause

Hiroyuki KAMEZAWA
2004-10-30T08:19:31Z

Hi,
> Oct 29 15:25:19 sleepy protections[]: 0 0 0
> Oct 29 15:25:19 sleepy DMA: 4294567735*4kB 4294792863*8kB
> 4294895642*16kB 4294943555*32kB 4294962724*64kB 4294966891*128kB
> 4294967255*256kB 4294967283*512kB
> 4294967290*1024kB 4294967293*2048kB 4294967294*4096kB = 4289685332kB
> Oct 29 15:25:19 sleepy Normal: 4293893066*4kB 4294583823*8kB
> 4294849819*16kB 4294950038*32kB 4294966291*64kB 4294966753*128kB
> 4294967182*256kB 4294967238*51
> 2kB 4294967265*1024kB 4294967278*2048kB 4294967281*4096kB = 4284847952kB
> Oct 29 15:25:19 sleepy HighMem: empty
> Oct 29 15:25:19 sleepy Swap cache: add 9372, delete 7530, find

This looks odd.

How about this fix ?
I don't know why this is missng ....

Kame <kamezawa.hiroyu@jp.fujitsu.com>
--

---

linux-2.6.10-rc1-mm2-kamezawa/mm/page_alloc.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletion(-)

diff -puN mm/page_alloc.c~clean-up mm/page_alloc.c
--- linux-2.6.10-rc1-mm2/mm/page_alloc.c~clean-up 2004-10-30 17:07:01.918419104 +0900
+++ linux-2.6.10-rc1-mm2-kamezawa/mm/page_alloc.c 2004-10-30 17:08:25.904651256 +0900
@@ -261,7 +261,9 @@ static inline void __free_pages_bulk (st
}
coalesced = base + page_idx;
set_page_order(coalesced, order);
- list_add(&coalesced->lru, &zone->free_area[order].free_list);
+ area = zone->free_area + order;
+ list_add(&coalesced->lru, &area->free_list);
+ area->nr_free++;
}

static inline void free_pages_check(const char *function, struct page *page)

_