lkml.org 
[lkml]   [2001]   [Nov]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Subjectmmap not working?
    Date
    From

    Hi,

    I want to mmap a device in an application, so I do:

    base = mmap(NULL , DEV_LENGTH, myprot , flags, kmem, dev_base);

    Turns out that some BIOSs put my device at an address like

    0xdffffc00

    whereas others put it at 0xfa000000 . In the latter case, mmap works
    as expected. However in the first case I get EINVAL: The base is
    not page-aligned.

    However, in the latter case I get my requested 1k of memory, and the
    following 3k for free. In the first case I'd want "3k for free,
    followed by the 1k I requested".

    effectively, provided "start" equals NULL, the kernel IMHO should:

    offset = dev_base & PAGE_MASK;
    return mmap (NULL, length+offset, prot, flags, base - offset) + offset;
    Comments?

    The "failure" was observed on 2.4.14 and/or 2.4.9.

    Roger.


    P.S. I end up not being able to closely follow linux-kernel
    lately. CCs to me appreciated.

    --
    ** R.E.Wolff@BitWizard.nl ** http://www.BitWizard.nl/ ** +31-15-2137555 **
    *-- BitWizard writes Linux device drivers for any device you may have! --*
    * There are old pilots, and there are bold pilots.
    * There are also old, bald pilots.
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:13    [W:0.022 / U:156.740 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site