> ioremap*() is only supposed to be used on IO regions or reserved
> pages. If you haven't marked the pages as reserved, then iounmap will
> do the wrong thing, so it's up to you to reserve the pages.
Au contraire!
I mark the page as reserved when I ioremap() it. However, if I leave it marked
reserved, then iounmap() will not unmap it. If I mark it "unreserved" (i.e.
reset the reserved bit), then iounmap will unmap it, but it will decrement the
page counter to -1 and the whole system will crash soon thereafter.
I've been asking about this problem for months, but no one has bothered to help
me out.
-- Timur Tabi - ttabi@interactivesi.com Interactive Silicon - http://www.interactivesi.comWhen 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/