lkml.org 
[lkml]   [2000]   [Sep]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
** Reply to message from Alan Cox <alan@lxorguk.ukuu.org.uk> on Fri, 29 Sep
2000 23:00:16 +0100 (BST)


> > "num_pages" is usually just equal to 1. This code appears to work very well.
> > However, when I call the iounmap function on the memory obtained via
> > ioremap_nocache, sometimes I hit a kernel BUG(). The code which causes the bug
> > is in page_alloc.c, line 85 (in function __free_pages_ok):
> >
> > if (page->buffers)
> > BUG();
>
> This sounds like you are trying to do maps on pages that are in use. No can do

Why not? I mean, I can access the memory anyway from the driver, since it's
all mapped linearly via phys_to_virt. All I'm really doing is creating a
temporary alias.

Unfortunately, this mapping is a requirement for our product. I'd hate to have
to create my own pte's and do it all manually.

What confuses me is what ioremap_nocache() doesn't fail. Why are these tests
(e.g. page->buffers) not in ioremap_nocache()?


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

When replying to a mailing-list message, please don't cc: me, because then I'll just get two copies of the same message.
-
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/

\
 
 \ /
  Last update: 2005-03-22 12:45    [W:0.079 / U:0.884 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site