This patch should fix the remap_file_pages problem for object-based rmap.
I added a function that converts an object-based page to a pte_chain-based
page. It's a little tricky because it has to preallocated all the
pte_chains it needs before taking the lock since the page can't be allowed
outside the lock in an intermediate state. Fortunately I know how many
pte_chains are needed in advance.
I also condensed some of the common code and added comments. One side
effect is I removed taking the page_table_lock during the pte lookups.
I've convinced myself that anyone else trying to touch those areas will
block on the locks I already hold. It survives the abuse test I've thrown
at it.
Dave McCracken
======================================================================
Dave McCracken IBM Linux Base Kernel Team 1-512-838-3059
[email protected] T/L 678-3059
--On Wednesday, March 12, 2003 18:16:01 -0500 Rik van Riel
<[email protected]> wrote:
> Could I get a copy of that abuse test ? ;))
My abuse test is to take a dual 200Mhz PentiumPro w/ 128M memory and do a
'make -j 50 bzImage' on a kernel tree. So far it's proven to find some
fairly low-probability races.
Dave
======================================================================
Dave McCracken IBM Linux Base Kernel Team 1-512-838-3059
[email protected] T/L 678-3059
On Wed, 12 Mar 2003, Dave McCracken wrote:
> I've convinced myself that anyone else trying to touch those areas will
> block on the locks I already hold. It survives the abuse test I've thrown
> at it.
Could I get a copy of that abuse test ? ;))
(if possible to riel-at-redhat.com, which I'm not throwing
out to the spammers since I don't control the spam filtering
for that address)
thanks,
Rik (who wants to port some of the partial object rmap code to 2.4)