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

From: James Bottomley
Date: Mon Jan 01 2007 - 09:35:57 EST


On Sat, 2006-12-30 at 10:26 -0800, Linus Torvalds wrote:
>
> On Sat, 30 Dec 2006, Russell King wrote:
> >
> > And here's the flush_anon_page() part.

This looks fine to me (if you need my ack).

> > Add flush_anon_page() for ARM, to avoid data corruption issues when using
> > fuse or other subsystems using get_user_pages().
>
> Btw, since this doesn't actually change any code for anybody but ARM, just
> adds a parameter that is obviously unused by everybody else, and if it
> actually fixes a real bug for ARM, I'll obviously happily take it even
> before 2.6.20. So go ahead put it in your ARM tree, and we'll get some
> testing through that. And just ask me to pull at some point.
>
> I wonder why nobody else seems to have a "flush_anon_page()"? This would
> seem to be a potential issue for architectures like sparc too.. Although
> maybe sparc can do a flush by physical index with "flush_dcache_page()".

The sparc handling of anonymous pages is different ... they accitentally
sweep them up in flush_dcache_page(). When I audited the architectures
to try to make fuse work on parisc, parisc and arm were the only ones
that actually needed flush_anon_page().

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/