Re: Interaction between Xen and XFS: stray RW mappings

Andi Kleen
2007-10-23T09:28:50Z

On Tue, Oct 23, 2007 at 10:36:41AM +1000, David Chinner wrote:
> > That doesn't mean it is correct.
>
> Right, but it also points to the fact that it's not causing problems
> from 99.999% of ppl out there.

So you're waiting for someone to take months to debug this again?

> You mean like vmap() could record the pages passed to it in the area->pages
> array,

The page tables contain pointers to the pages anyways. vunmap() has to walk
them. It would not be very difficult to store them in an array during
the walk.

>
> If we did this, it would probably be best to pass a page release function
> into the vmap or vunmap call - we'd need page_cache_release() called on
> the page rather than __free_page()....

Possible. Normally vmalloc pages should not be in the LRU except yours
so it would be probably fine to just change it.

> The solution belongs behind the vmap/vunmap interface, not in XFS....

You could also just keep the array from map time around yourself.
Then you could do it yourself.

-Andi