Re: CONFIG_BIGMEM and rawio

Manfred Spraul (manfreds@colorfullife.com)
Sat, 04 Sep 1999 12:01:55 +0200


Andrea Arcangeli wrote:
> The bug is not present.

What happens to shared (via COW) bigmem pages during swapout?
Is it correct that they loose the "shared"-status?

e.g.:
process 1: allocates memory, gets BIGMEM pages. Then it dirties a few
pages, forks new processes.
The new processes only read these pages, then kswapd tries to swap out
one of these pages.

When the first instance of the page is paged out, a swap cache entry is
created in normal (i.e. not BIGMEM) memory [prepare_bigmem_swapout()].
This copy is marked as swap cache page.
But when the second instance is paged out, the check in mm/vmscan.c,
line 79 will not detect this
["if (PageSwapCache(page)) {" will fail]
and the page is swapped out again.

--
	Manfred

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/