[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] ext2fs and large stores (> 1.5G)
From: |
Marcus Brinkmann |
Subject: |
Re: [PATCH] ext2fs and large stores (> 1.5G) |
Date: |
Wed, 30 Apr 2003 18:13:25 +0200 |
User-agent: |
Mutt/1.5.3i |
On Wed, Apr 30, 2003 at 05:48:05PM +0300, Ognyan Kulev wrote:
> Here is the big problem that corrupts data: When a block is requested
> and the block cache is full, I _reuse_ VM page from the block cache but
> I can't force Mach to reload it. Mach must reload it because I assign
> different mapping between the memory page and the backing store. I
> tried pager_flush_some and pager_offer_page but they don't work or I do
> something incorrectly.
I don't think it is possible to force GNU Mach to drop a page or reload it,
once it is loaded it is in the page cache until GNU Mach decides to evict it
on its own (due to memory pressure). Thomas, am I right?
That's why both schemes proposed by Thomas and Roland did not change the
meaning of a mapped page once it is mapped: In Thomas' model, ranges of the
partition would be mapped, and there would be a cache of such mappings. If
you need different areas of the partition, and the cache is full, you would
drop a whole unused range by unmapping it and mapping the different area.
In Roland's model, the whole metadata is collocated into a single (or
several) mapped area, and the the mapping never changes.
Thanks,
Marcus
--
`Rhubarb is no Egyptian god.' GNU http://www.gnu.org marcus@gnu.org
Marcus Brinkmann The Hurd http://www.gnu.org/software/hurd/
Marcus.Brinkmann@ruhr-uni-bochum.de
http://www.marcus-brinkmann.de/