Re: [PATCH -mm] mm: more likely reclaim MADV_SEQUENTIAL mappings

From: Nick Piggin
Date: Mon Jul 21 2008 - 22:02:44 EST


On Tuesday 22 July 2008 01:14, Rik van Riel wrote:
> On Mon, 21 Jul 2008 15:49:00 +1000
>
> Nick Piggin <nickpiggin@xxxxxxxxxxxx> wrote:
> > It is already bad because: if you are doing a big streaming copy
> > which you know is going to blow the cache and not be used again,
> > then you should be unmapping behind you as you go.
>
> MADV_SEQUENTIAL exists for a reason.

AFAIKS it is to open up readahead mainly. Because it is quite reasonable
to otherwise be much more conservative about readahead than with regular
reads (and of course you can't do big chunks per kernel entry)...

I don't actually care what the man page or posix says if it is obviously
silly behaviour. If you want to dispute the technical points of my post,
that would be helpful.


> If you think that doing an automatic unmap-behind will be
> a better way to go, we can certainly whip up a patch for
> that...

I don't. Don't let me stop you trying of course :)

Consider this: if the app already has dedicated knowledge and
syscalls to know about this big sequential copy, then it should
go about doing it the *right* way and really get performance
improvement. Automatic unmap-behind even if it was perfect still
needs to scan LRU lists to reclaim.
--
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/