Re: invalidate_inode_pages in 2.5.32/3

Andrew Morton
2002-09-11T00:02:27Z

Daniel Phillips wrote:
>
> ...
> Andrew, did I miss something, or does the current code really ignore
> the pte dirty bits?

Sure. pte_dirty -> PageDirty propagation happens in page reclaim,
and in msync.

We _could_ walk the pte chain in writeback. But that would involve
visiting every page in the mapping, basically. That could hurt.

But if a page is already dirty, and we're going to write it anyway,
it makes tons of sense to run around and clean all the ptes which
point at it.

It especially makes sense for fielmap_sync() to do that. (quickly
edits the todo file).

I'm not sure that MAP_SHARED is a good way of performing file writing,
really. And not many things seem to use it for that. It's more there
as a way for unrelated processes to find a chunk of common memory via
the usual namespace. Not sure about that, but I am sure that it's a
damn pest.