Re: 2.4.19pre1aa1

From: Andrea Arcangeli (andrea@suse.de)
Date: Mon Mar 04 2002 - 18:52:15 EST


On Mon, Mar 04, 2002 at 08:11:21PM -0300, Rik van Riel wrote:
> You'll have one CPU starting to allocate from zone A, falling
> back to zone B and then further down.

what is zone A/B, I guess you mean node A/B etc.. Zones are called
NORMAL/DMA/HIGHMEM so I'm confused.

> Another CPU starts allocating at zone B, falling back to A
> and then further down.
>
> How would you express this in classzone ? I've looked at it

I don't see the problem you're raising. classzone is an information that
you pass the memory balancing, that tells it "what kind of ram you need".
That's all. This ensure it does the right work and that it puts the result into
the per-process local_pages structure, so the result isn't stolen before
we can notice it (fairness). That's completly unrelated to NUMA, I think
I said that many times. classzone and numa are disconnected concepts.

> As for kswapd going crazy, that is nicely fixed by having
> per zone lru lists... ;)

I don't see how per-zone lru lists are related to the kswapd deadlock.
as soon as the ZONE_DMA will be filled with filedescriptors or with
pagetables (or whatever non pageable/shrinkable kernel datastructure you
prefer) kswapd will go mad without classzone, period.

Check l-k and see how many kswapd-crazy reports there are been since
classzone is been introduced into the kernel, and incidentally we just
seen new kswapd report for the rmap patch without swap (it's hard to
trigger I know without swap, with swap such behaviour will happen
trivially because without swap every single page of anonymous ram will
become unpageable just like the kernel data, but the very same
kswapd-crazy problem would happen if swap was there too, it would only
take more time to reproduce like in the 2.4.x series with x < 10). it's
the same problem you told me at the kernel summit, remember? classzone
has the advantage of being very low cost and it also increases the
fairness of the allocations, compared to a system where you may end
working for others rather than for yourself like with the "plenty" stuff.
It not only fixes kswapd.

Andrea
-
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 : Thu Mar 07 2002 - 21:00:36 EST