On Wed, Oct 04, 2000 at 01:47:28PM -0400, Ken Hirsch wrote:
> 
> The advantages I see are that database systems and other resource managers
> would have much less complicated buffering logic, that the data would not be
> double-buffered, that the LRU algorithm would be more accurate (there was a
> discussion of this a few months ago with regard to multiple file systems).
> Hopefully we could better performance without having to tune so much.
> 
> It would also be a step toward a common open-source transaction manager.
> 
> There are issues with regard to checkpointing, but other than that, what do
> you think of this idea?

The main motivation for that change seems to be simpler buffering logic
in a user space log manager. How about simply adding a madvise() flag
that tells the MM system that you don't want it to flush the page to 
the backing store yet. After the log manager did its job it could clear
that flag and the system would flush it.

The only nasty issue is that it could cause deadlock in the low memory 
case when the system cannot flush pages because they all have this flag
set. A very simple workaround would be to write the page cache page to
swap then instead of the underlying file [this would make swap accounting
harder, but linux doesn't do that anyways]. Later the swapped page could be
paged in again and then writen to the real file.   It would be slow in the
trashing case, but in this case you should not expect much performance
anyways.

-Andi

-
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [EMAIL PROTECTED]

Reply via email to