Re: -mm merge plans for 2.6.23

From: Ray Lee
Date: Wed Jul 25 2007 - 12:19:29 EST


On 7/24/07, Nick Piggin <nickpiggin@xxxxxxxxxxxx> wrote:
Ray Lee wrote:
> On 7/23/07, Nick Piggin <nickpiggin@xxxxxxxxxxxx> wrote:
>> If we can first try looking at
>> some specific problems that are easily identified.
>
> Always easier, true. Let's start with "My mouse jerks around under
> memory load." A Google Summer of Code student working on X.Org claims
> that mlocking the mouse handling routines gives a smooth cursor under
> load ([1]). It's surprising that the kernel would swap that out in the
> first place.
>
> [1]
> http://vignatti.wordpress.com/2007/07/06/xorg-input-thread-summary-or-something/

OK, I'm not sure what the point is though. Under heavy memory load,
things are going to get swapped out... and swap prefetch isn't going
to help there (at least, not during the memory load).

Sorry, I headed slightly off-topic. Or perhaps 'up-topic' to the
larger issue, which is that the desktop experience has some suckiness
to it.

My point is that the page replacement algorithm has some choice as to
what to evict. The xorg input handler never should have been evicted.
It was hopefully a hard example of where the current page replacement
policy is falling flat on its face.

All that said, this could really easily be handled by xorg mlocking
the critical realtime stuff.

There are also other issues like whether the CPU scheduler is at fault,
etc. Interactive workloads are always the hardest to work out.

This one is not a scheduler issue, as mlock()ing the mouse handling
routines gives a smooth cursor. It's just a pure page replacement
problem, as the kernel should never have swapped that out in the first
place.

<snip things I agreed with>

<snip list of things to watch during updatedb run>

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