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.019 / U:122.592 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site