Re: can device drivers return non-ram via vm_ops->nopage?

From: William Lee Irwin III
Date: Sat Mar 20 2004 - 13:23:53 EST


On Sat, 20 Mar 2004, Andrea Arcangeli wrote:
>> The only bugreport I've got so far for the latest anon_vma code is from
>> Jens, and it's a device driver bug in my opinion, but I'd like to have a
>> definitive confirmation from you about the ->nopage API.

On Sat, Mar 20, 2004 at 09:39:51AM -0800, Linus Torvalds wrote:
> I'd say that this is definitely a driver bug.
> If a driver wants to map non-RAM pages, that's perfectly ok, but it MUST
> NOT happen through "nopage()". The driver should map them with
> "remap_page_range()", and thus never take a page fault for such pages at
> all.
> There is no reason to ever lazily map non-RAM pages - clearly they aren't
> using any "real memory", so there is no reason to not fill the page tables
> at mmap() time.
> In other words, the driver is horribly broken.

If our official story is prefaulting, there should be very little to do.
I'll grep around for drivers doing the wrong thing and see if any rmk's
not handling are in need of conversion from fault handling to
remap_page_range().


-- wli
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/