[lkml]   [2009]   [Sep]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH] NOMMU: Fix MAP_PRIVATE mmap() of objects where the data can be mapped directly
On Fri, Sep 25, 2009 at 4:24 PM, David Howells <> wrote:
> graff yang <> wrote:
>> > +       if (capabilities & BDI_CAP_MAP_DIRECT) {
>> This will breaks many drivers, e.g. some frame-buffer drivers, on NOMMU
>> system.  Because they don't have get_unmapped_area().  These drivers depend
>> on it's mmap() to return the frame-buffer base address.
> Then they won't work on NOMMU.  Read Documentation/nommu-mmap.txt:
>        ============================================
>        ============================================
>        To provide shareable character device support, a driver must provide a
>        file->f_op->get_unmapped_area() operation. The mmap() routines will
>        call this to get a proposed address for the mapping. This may return an
>        error if it doesn't wish to honour the mapping because it's too long,
>        at a weird offset, under some unsupported combination of flags or
>        whatever.
> The chardev driver doesn't provide the virtual address through its mmap() fop
> in MMU-mode either - that's provided by do_mmap_pgoff().
> David
OK, I think do_mmap_pgoff() now looks nice with your patch. Merely,
at least the alsa/fb driver
will crash due to the vm_region changes.
The alsa guys are fixing this issue:

Is there any other things be affected?

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2009-09-25 13:07    [from the cache]
©2003-2014 Jasper Spaans. hosted at Digital Ocean