Messages in this thread |  | | Date | Wed, 3 Jan 2001 22:55:05 +0100 | From | Andrea Arcangeli <> | Subject | Re: Should page->count ever be -1? |
| |
On Wed, Jan 03, 2001 at 03:07:03PM -0600, Timur Tabi wrote: > I'm experiencing some kind of memory leaks playing with ioremap and iounmap, > and I've narrowed down the problem to iounmap refusing to unmap the memory that > I just mapped. The line of code in question is > > if (!PageReserved(page) && atomic_dec_and_test(&page->count)) { > > from page_alloc.c (this is 2.2.18pre15). It appears that page->count is > already zero when this code is executed, and after it's executed, page->count > becomes -1 (or more accurately, 0xFFFFFFFF). Is this acceptable, or is it an > error condition?
It's an error condition. Make sure you marked the page as reserved in the mmap callback if it's not an mmio region outside RAM.
Andrea - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |