Subject: Re: swap_dup: Bad swap file entry 00480020

From: Marcelo Tosatti <[email-masked]>
Date: Fri, 22 Jul 2005 09:57:50 -0300

On Fri, Jul 22, 2005 at 10:46:38AM -0500, bogdan antonovici wrote:
> Hi Dan,
> 
> I checked the driver code. I found a pointer that was in my opinion
> initialized too late and i corrected that but other than that i haven't
> found anything.
> I ran the driver alone, enabling the interrupts and the interrupt
> routine doesn't cause any trouble.
> I started my application and i haven't seen any sign of trouble.
> But once i started also the snmpd after few interrupts i got the
> message:
> 
> __alloc_pages: 0-order allocation failed (gfp=0x1d2/0)
> VM: killing process sectionmond

Thats a different problem: you ran out of memory and the VM can't swap
out any data.

So its likely that the pagetable corruption is gone (it was indeed a bug
in the driver as Dan suspected).

> sectionmond being my application.
> My read and write driver operation are requesting a page for a buffer
> but they also release it. Should i declare the buffer pointer with
> volatile attribute?
> Do you know what may cause that message?

Out of memory condition.