Should page->count ever be -1?

Timur Tabi (ttabi@interactivesi.com)
Wed, 3 Jan 2001 15:07:03 -0600


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?

-- 
Timur Tabi - ttabi@interactivesi.com
Interactive Silicon - http://www.interactivesi.com

When replying to a mailing-list message, please direct the reply to the mailing list only. Don't send another copy to me. - 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/