Should page->count ever be -1?

From: Timur Tabi (ttabi@interactivesi.com)
Date: Wed Jan 03 2001 - 16:07:03 EST


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/



This archive was generated by hypermail 2b29 : Sun Jan 07 2001 - 21:00:16 EST