> > Does it drop pages unconditionally ? What happens if I do a
> > streaming_cat largedatabase > /dev/null while other processes
> > are working on it ? It's not a good thing to remove the whole
> > cached data other apps are working on.
>
> Anybody could make the cache thrash. I don't see this as an argument against
> O_STREAMING (whether explicitly activated, or dynamically activated).
In fact it isn't. But I don't undestand why we unconditionally discard a
page after it has been read. Yes, I told the kernel I will not need it
anymore, but someone else could need it. I'm not a kernel hacker and I
don't know if this is possible: when a page is read from disk by a O_STR
file flag it "kill me first when needed, otherwise leave me in memory",
and if a page is already cache, just use it and change nothing. This
will preserve data used by other processes, and the data I've just
read if there is room. Free memory is wasted momory. Don't drop caches
if nobody need memory.
Bye.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Tue Oct 15 2002 - 22:00:33 EST