* 2.5.48-mm1
@ 2002-11-19 9:16 Andrew Morton
2002-11-19 10:52 ` 2.5.48-mm1 Nick Piggin
2002-11-19 14:05 ` 2.5.48-mm1 Hugh Dickins
0 siblings, 2 replies; 5+ messages in thread
From: Andrew Morton @ 2002-11-19 9:16 UTC (permalink / raw)
To: lkml, linux-mm
url: http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.48/2.5.48-mm1/
Lots of little bits and pieces here. Most notably I've started to
look at the scheduling latency of the uniprocessor preemptible kernel.
It was actually pretty awful. Most everything in the MM/VFS area has
been fixed here, and it is now achieving 500 microseconds max latency
at 500MHz.
With the notable exception of the case where a task exits while holding
a large amount of mmapped memory. 300 milliseconds for a 700 megabyte
mapping, and a couple of milliseconds while just running cvs. This will
take quite some fixing.
Only ext2 has been done. Other filesystems will need attention.
Since 2.5.47-mm3:
linus.patch
Latest from Linus.
+axboe-scsi-fix.patch
Fix a scsi plugging bug.
+kgdb-nmi-signal.patch
+kgdb-nr-cpus.patch
Some work against George's patch
+misc.patch
Little fixes
+radix-tree-height-reinit.patch
Fix a radix-tree bug
+radix-tree-overflow-fix.patch
And another (maybe - needs specific testing yet)
-mbcache-cleanup.patch
-rmap-flush-cache-page.patch
-swap-get_page-page-unlock.patch
-swap-writepages-swizzled.patch
-misc.patch
-htlb-combined-2.patch
-htlb-fixes.patch
-slab-no-BUG.patch
-remove-inode-buffers.patch
-mpage-kmap.patch
-inode-reclaim-balancing.patch
Merged
+loop-balance-pages.patch
Small optimisation to loop
+page-state-messages.patch
Handle bad pages in the page allocator without going BUG
+remove-lame-test.patch
Don't allow NULL pointers to be passed into wake_up any more.
+plugbug.patch
Fix an SMP race in the disk queue plugging code.
+mmapped-blockdev-warning.patch
Kill a warning which comes out with MAP_SHARED mappings of blockdevs
+s_dir_count-fix.patch
Fix ext2/3 directory counting (for the Orlov allocator heuristics; not
a serious bug)
+rz-bootmem-fix.patch
Don't assume that physical memory starts at physical address 0
+dio-counting.patch
Direct-IO cleanups
+dio-reduce-context-switch-rate.patch
Reduce the context switch rate during direct-IO
+writeback-reduced-context-switches.patch
Reduced context switch rate during writeback
+scheduling-points.patch
Fix some long-held locks at the pagecache layer
+swap-accounting.patch
And in the swap accounting
+swapoff-cleanup.patch
Stuf from Hugh.
+page-reclaim-scheduling-points.patch
And in page reclaim
+sync_blockdev-lock-kernel.patch
And in the blockdev driver.
+incremental-slab-shrink.patch
And in the slab cache pruner.
+np-deadline.patch
Deadline scheduler work from Nick Piggin
+less-requests.patch
I reduced the size of the disk queues. A quarter-gig per disk
is excessive.
-dcache_rcu.patch
+dcache_rcu-2-2.5.48.patch
+dcache_rcu-3-2.5.48.patch
Split up
+shpte-protection-fix.patch
A shared pagetable fix.
All patches
linus.patch
cset-1.842-to-1.897.txt.gz
axboe-scsi-fix.patch
kgdb-ga.patch
kgdb stub for ia32 (George Anzinger's one)
kgdb-nmi-signal.patch
kgdb-nr-cpus.patch
misc.patch
misc fixes
rcu-stats.patch
RCU statistics reporting
genksyms-fix.patch
modversions fix for exporting per-cpu data
radix-tree-height-reinit.patch
Reinitialise radix tree height
radix-tree-overflow-fix.patch
handle overflows in radix_tree_gang_lookup()
buffer-debug.patch
buffer.c debugging
loop-balance-pages.patch
Use balance_dirty_pages_ratelimited() in loop.c
page-state-messages.patch
Expanded bad page handling
remove-lame-test.patch
remove a strange test in __wake_up()
congestion-wait.patch
Fix busy-wait with writeback to large queues
plugbug.patch
plug a plugging bug
mmapped-blockdev-warning.patch
remove a warning from __block_write_full_page()
s_dir_count-fix.patch
ext2/ext3 Orlov directory accounting fix
rz-bootmem-fix.patch
bootmem crash fix
back-to-writepage.patch
Remove mapping->vm_writeback
aio-direct-io-infrastructure.patch
AIO support for raw/O_DIRECT
aio-direct-io.patch
AIO support for raw/O_DIRECT
dio-counting.patch
dio-reduce-context-switch-rate.patch
Reduced wakeup rate in direct-io code
inlines-net.patch
reiserfs-readpages.patch
reiserfs v3 readpages support
reiserfs-readpages-fix.patch
resurrect-incremental-min.patch
strengthen the `incremental min' logic in the page allocator
unfreeable-zones.patch
VM: handle zones which are full of unreclaimable pages
nobh.patch
no-buffer-head ext2 option
writeback-reduced-context-switches.patch
reduced context switch rate in writeback
scheduling-points.patch
Add some low-latency scheduling points
swap-accounting.patch
realtime swapspace accounting
swapoff-cleanup.patch
swapoff accounting cleanup
page-reclaim-scheduling-points.patch
Add a scheduling point to page reclaim
sync_blockdev-lock-kernel.patch
Don't hold BKL across sync_blockdev() in blkdev_put()
simplified-vm-throttling.patch
Remove the final per-page throttling site in the VM
auto-unplug.patch
self-unplugging request queues
less-unplugging.patch
Remove most of the blk_run_queues() calls
page-reclaim-motion.patch
Move reclaimable pages to the tail ofthe inactive list on IO completion
handle-fail-writepage.patch
Special-case fail_writepage() in page reclaim
activate-unreleaseable-pages.patch
Move unreleasable pages onto the active list
incremental-slab-shrink.patch
reduced latency in dentry and inode cache shrinking
rbtree-iosched.patch
rbtree-based IO scheduler
np-deadline.patch
deadline IO scheduler tweaks
less-requests.patch
Go back to 128 read and 128 write requests per queue
page-reservation.patch
Page reservation API
wli-show_free_areas.patch
show_free_areas extensions
kmap-atomic-nfs.patch
Subject: Re: [RFC] use kmap_atomic in the NFS client
dcache_rcu-2-2.5.48.patch
dcache_rcu-3-2.5.48.patch
shpte-ng.patch
pagetable sharing for ia32
shpte-protection-fix.patch
shared pagetable protection fix
--
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-mm.org/
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: 2.5.48-mm1
2002-11-19 9:16 2.5.48-mm1 Andrew Morton
@ 2002-11-19 10:52 ` Nick Piggin
2002-11-19 14:05 ` 2.5.48-mm1 Hugh Dickins
1 sibling, 0 replies; 5+ messages in thread
From: Nick Piggin @ 2002-11-19 10:52 UTC (permalink / raw)
To: Andrew Morton; +Cc: lkml, linux-mm, Jens Axboe
Andrew Morton wrote:
>url: http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.48/2.5.48-mm1/
>
snip
>
>
>Since 2.5.47-mm3:
>
snip
>+np-deadline.patch
>
> Deadline scheduler work from Nick Piggin
>
snip
This may degrade IO read latency a little bit and will
still be suboptimal when there are both read and write
requests outstanding for some io patterns (no worse than
47-mm3). Jens and I have been making progress here however.
Nick
--
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-mm.org/
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: 2.5.48-mm1
2002-11-19 9:16 2.5.48-mm1 Andrew Morton
2002-11-19 10:52 ` 2.5.48-mm1 Nick Piggin
@ 2002-11-19 14:05 ` Hugh Dickins
2002-11-21 21:04 ` 2.5.48-mm1 Bill Davidsen
1 sibling, 1 reply; 5+ messages in thread
From: Hugh Dickins @ 2002-11-19 14:05 UTC (permalink / raw)
To: Andrew Morton; +Cc: lkml, linux-mm
On Tue, 19 Nov 2002, Andrew Morton wrote:
>
> +loop-balance-pages.patch
>
> Small optimisation to loop
I disagree with this one (changing balance_dirty_pages to _ratelimited
when loop_thread writes to file): it's a step in the right direction,
but I think you should remove that balance_dirty_pages call completely.
I'm experimenting with what's needed to prevent deadoralivelock in
loop over tmpfs under heavy memory pressure (thank you for eliminating
wait_on_page_bit from shrink_list!). One element of that is to ignore
balance_dirty_pages below loop (I hadn't noticed the explicit call,
offhand I'm unsure whether that's the only possible instance).
The loop_thread is working towards undirtying memory (completing
writeback): a loop of blk_congestion_waits is appropriate at the
upper level where the user task generating dirt needs to be throttled,
but I don't believe it's appropriate at this level - we wouldn't want
to throttle the disk, no more should we throttle the loop_thread.
Hugh
--
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-mm.org/
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: 2.5.48-mm1
2002-11-19 14:05 ` 2.5.48-mm1 Hugh Dickins
@ 2002-11-21 21:04 ` Bill Davidsen
2002-11-22 1:08 ` 2.5.48-mm1 William Lee Irwin III
0 siblings, 1 reply; 5+ messages in thread
From: Bill Davidsen @ 2002-11-21 21:04 UTC (permalink / raw)
To: Hugh Dickins; +Cc: lkml, linux-mm
On Tue, 19 Nov 2002, Hugh Dickins wrote:
> I disagree with this one (changing balance_dirty_pages to _ratelimited
> when loop_thread writes to file): it's a step in the right direction,
> but I think you should remove that balance_dirty_pages call completely.
>
> I'm experimenting with what's needed to prevent deadoralivelock in
> loop over tmpfs under heavy memory pressure (thank you for eliminating
> wait_on_page_bit from shrink_list!). One element of that is to ignore
> balance_dirty_pages below loop (I hadn't noticed the explicit call,
> offhand I'm unsure whether that's the only possible instance).
>
> The loop_thread is working towards undirtying memory (completing
> writeback): a loop of blk_congestion_waits is appropriate at the
> upper level where the user task generating dirt needs to be throttled,
> but I don't believe it's appropriate at this level - we wouldn't want
> to throttle the disk, no more should we throttle the loop_thread.
This is purely a performance decision. If you want to avoid bad latency on
reads then you have to throttle writes. The loop_thread will make the
system just as slow as a user application writing the same number of
pages.
If you want io scheduling you will deliberately slow writes to let reads
happen in reasonable time. And vice-versa I imagine, although I don't
think I've seen that case.
--
bill davidsen <davidsen@tmr.com>
CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.
--
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-mm.org/
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: 2.5.48-mm1
2002-11-21 21:04 ` 2.5.48-mm1 Bill Davidsen
@ 2002-11-22 1:08 ` William Lee Irwin III
0 siblings, 0 replies; 5+ messages in thread
From: William Lee Irwin III @ 2002-11-22 1:08 UTC (permalink / raw)
To: Bill Davidsen; +Cc: Hugh Dickins, lkml, linux-mm
On Thu, Nov 21, 2002 at 04:04:25PM -0500, Bill Davidsen wrote:
> This is purely a performance decision. If you want to avoid bad latency on
> reads then you have to throttle writes. The loop_thread will make the
> system just as slow as a user application writing the same number of
> pages.
> If you want io scheduling you will deliberately slow writes to let reads
> happen in reasonable time. And vice-versa I imagine, although I don't
> think I've seen that case.
Not entirely so. This is just a scheduling decision that has to
discriminate between blocking and nonblocking requests and prevent
starvation of the blocking requests. Write throttling is an
oversimplification that functions poorly.
Bill
--
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-mm.org/
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2002-11-22 1:08 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-11-19 9:16 2.5.48-mm1 Andrew Morton
2002-11-19 10:52 ` 2.5.48-mm1 Nick Piggin
2002-11-19 14:05 ` 2.5.48-mm1 Hugh Dickins
2002-11-21 21:04 ` 2.5.48-mm1 Bill Davidsen
2002-11-22 1:08 ` 2.5.48-mm1 William Lee Irwin III
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox