linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* memory pressure and kswapd
@ 2000-09-23 17:31 Ying Chen/Almaden/IBM
  2000-09-23 20:48 ` Roger Larsson
  0 siblings, 1 reply; 2+ messages in thread
From: Ying Chen/Almaden/IBM @ 2000-09-23 17:31 UTC (permalink / raw)
  To: Rik van Riel; +Cc: linux-mm

Hi,

I have a question on the memory_pressure() and keep_kswapd_awake() calls.
The question may be specific to test6, since vm has been changed in more
recently releases.
Why should memory_pressure() and keep_kswapd_awake() return 1 as long as
one of the zones is low on memory? Shouldn't it be the case that when all
of the zones are low then return 1? I noticed that in some cases, when I
ran out of memory in DMA and low memory zones, kswapd would kick in and is
kept awake for ever, despite the fact that I still have about 1GB memory in
the HIGH memory zone. At least I'd think that for NORMAL memory
allocations, they should be able to use both LOW and HIGH memory zones, and
only kick kswapd when both LOW and HIGH zones are short of memory.
Am I missing something here?


Ying

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux.eu.org/Linux-MM/

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: memory pressure and kswapd
  2000-09-23 17:31 memory pressure and kswapd Ying Chen/Almaden/IBM
@ 2000-09-23 20:48 ` Roger Larsson
  0 siblings, 0 replies; 2+ messages in thread
From: Roger Larsson @ 2000-09-23 20:48 UTC (permalink / raw)
  To: Ying Chen/Almaden/IBM; +Cc: linux-mm

Hi,

This code was mostly mine...

keep_kswapd_awake returns one if:
 all zones are 'zone_wake_kswapd'
or
 any zone is MIN or below [critically low]

memory_pressure returns one if:
 any zone has less than LOW.
 (this test is rarely used...)

It is the keep_kswapd_awake that is the interesting one.
In test5 we did not check for critically low risking
to have run into a situation were DMA memory is needed
but none is available...

Your situation is probably that while trying to find one
of those files it has to scan throu lots of pages.


You might try to remove the test for MIN in
keep_kswapd_awake to see if things improve.

I have thought about adding more steps on the memory
stair to avoid this problem.

/RogerL

Ying Chen/Almaden/IBM wrote:
> 
> Hi,
> 
> I have a question on the memory_pressure() and keep_kswapd_awake() calls.
> The question may be specific to test6, since vm has been changed in more
> recently releases.
> Why should memory_pressure() and keep_kswapd_awake() return 1 as long as
> one of the zones is low on memory? Shouldn't it be the case that when all
> of the zones are low then return 1? I noticed that in some cases, when I
> ran out of memory in DMA and low memory zones, kswapd would kick in and is
> kept awake for ever, despite the fact that I still have about 1GB memory in
> the HIGH memory zone. At least I'd think that for NORMAL memory
> allocations, they should be able to use both LOW and HIGH memory zones, and
> only kick kswapd when both LOW and HIGH zones are short of memory.
> Am I missing something here?
> 
> Ying
> 
> --
> To unsubscribe, send a message with 'unsubscribe linux-mm' in
> the body to majordomo@kvack.org.  For more info on Linux MM,
> see: http://www.linux.eu.org/Linux-MM/

--
Home page:
  http://www.norran.net/nra02596/
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux.eu.org/Linux-MM/

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2000-09-23 20:48 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-09-23 17:31 memory pressure and kswapd Ying Chen/Almaden/IBM
2000-09-23 20:48 ` Roger Larsson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox