Linus> On Thu, 21 Oct 1999, Paul Mackerras wrote:
>> There's a problem that doesn't show up on intel, and that is that
>> flush_page_to_ram() is called with inconsistent arguments.
>> Sometimes it's a struct page * (mm/filemap.c and mm/memory.c), in
>> other cases it's a kernel virtual address (e.g. kernel/ptrace.c,
>> include/linux/highmem.h).
>>
>> I'm inclined to think it should be a kernel virtual address.
>> Comments?
Linus> Ho humm.. I would almost prefer the "struct page" because in
Linus> theory you might want to do it without mapping the page at
Linus> all. But this is definitely a case where most of the time it's
Linus> only needed with virtual caches, so at the same time a virtual
Linus> address is not necessarily wrong either.
Linus> So my preference would be a "struct page", but if you have a
Linus> stronger opinion you can override me with a little
Linus> argumentation for show, ok?
The one case I can think of is for device drivers that don't get the
page struct but just a virtual address. But I guess this is already
covered by the dma_wback_cache_*() and using flush_page_to_ram() in a
driver is considered a bug.
Jes
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/