Re: fuse, get_user_pages, flush_anon_page, aliasing caches and allthat again

From: James Bottomley
Date: Tue Jan 02 2007 - 17:54:25 EST


On Mon, 2007-01-01 at 23:45 +0000, Russell King wrote:
> > However the cache flushing in kmap/kunmap idea might be cleaner and
> > better.
>
> It has the significant advantage that, unlike the flush* calls, they
> can't really be forgotten by folk programming on cache alias-free
> hardware. That's a _very_ persuasive argument for this proposed
> interface.

OK, so lets get down to brass tacks and look at the API characteristics.

Some of the issues are:

1. Should kmap() actually flush all the user spaces?
2. Do we need additional hints in to kmap/kunmap?

My initial thought on 1. is no, since by and large we use kmap on pages
that have come to use via an I/O path, so usually they've already had
the user caches made coherent, unless you want do do this via a hint.

For 2. like I said, I coded this on parisc without hints (using the page
table information instead to deduce what type of access the page had
taken) but we could equally well have used hints.

James


-
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/