2.2.6_andrea3.bz2 (fixed an interesting (harmless) bug) [Re: [big

Andrea Arcangeli (andrea@e-mind.com)
Tue, 27 Apr 1999 02:18:22 +0200 (CEST)


On 26 Apr 1999, Harvey J. Stein wrote:

>Without gdbm_sync (interactive test):
>
> user sys elapsed worst 2nd
> 88.50 24.90 17:38.55 97.38 74.78
>
>It didn't have big pauses while the test was running, but it ran much
>slower! The system *was* sluggish and did have lots of annoying

I think the problem is that the buffer cache couldn't grow too much (some
VM not buffer related thing). I think now it should work better and here
with 32mbyte of RAM I must continue to avoid to fsync to get performances.
Maybe because I have a slower I/O...

I also killed bdflush (I left it there just in the case somebody want to
send him a signal and in order to handle sync/unmount from sysrq keys). We
need kswapd because we can reclaim pages from irq (where we can't sleep)
but in the buffer cache when we mark a buffer dirty we can always sleep.
And syncing pages slowly in background is far better than generating
stream of I/O request that will stall the system for long times.

I also discovered an interesting bug in my page-mapping handling in
2.2.6_andrea2 (I simply forgot to increase the map_count of the page at
fork time... ;). The bug can't lead to corruption/crash or any kind of
other harm because I designed the map_count handling in a safe way, but
the bug was obviously harming performances :(. So if 2.2.6_andrea2 was
fast 2.2.6_andrea3 can be an order of magnitude faster in shrink_mmap.

So I would be glad if you could try out 2.2.6_andrea3.bz2 and tell me if
something changed in better or worse.

ftp://e-mind.com/pub/andrea/kernel/2.2.6_andrea3.bz2

Thanks!

Andrea Arcangeli

-
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/