On Thu, Oct 13, 2011 at 04:57:21AM +0800, Jan Kara wrote: > > Hello, > > this is a fourth version of my patch series improving busyloop prevention in > writeback code and then replacing some redirty_tail() calls with requeue_io() > to avoid postponing writeback for too long. > > Changes since v3: > * Improved busyloop prevention to abort work which cannot make progress if we > are retrying for too long or if there is some other work to do. > * Increased maximum sleep time in the busy loop to avoid eating CPU power > unnecessarily. > * Removed wbc->pages_skipped check > > Thanks to Fengguang for review, testing and good suggestions. Yeah the new version addresses my previous concerns, and the test results are good in general: 3.1.0-rc8-ioless6a+ 3.1.0-rc8-ioless6-requeue6+ ------------------------ ------------------------ 58.23 -2.7% 56.65 thresh=100M/btrfs-10dd-4k-8p-4096M-100M:10-X 58.43 -2.0% 57.25 thresh=100M/btrfs-1dd-4k-8p-4096M-100M:10-X 58.53 -1.9% 57.42 thresh=100M/btrfs-2dd-4k-8p-4096M-100M:10-X 37.34 +0.1% 37.38 thresh=100M/ext3-10dd-4k-8p-4096M-100M:10-X 44.44 +0.5% 44.68 thresh=100M/ext3-1dd-4k-8p-4096M-100M:10-X 41.70 +2.0% 42.52 thresh=100M/ext3-2dd-4k-8p-4096M-100M:10-X 46.45 -0.3% 46.33 thresh=100M/ext4-10dd-4k-8p-4096M-100M:10-X 56.60 -1.5% 55.75 thresh=100M/ext4-1dd-4k-8p-4096M-100M:10-X 54.14 -0.9% 53.64 thresh=100M/ext4-2dd-4k-8p-4096M-100M:10-X 44.53 -2.6% 43.37 thresh=100M/xfs-10dd-4k-8p-4096M-100M:10-X 55.89 -2.3% 54.58 thresh=100M/xfs-1dd-4k-8p-4096M-100M:10-X 51.11 +0.0% 51.12 thresh=100M/xfs-2dd-4k-8p-4096M-100M:10-X 56.55 -1.3% 55.82 thresh=1G/btrfs-100dd-4k-8p-4096M-1024M:10-X 56.11 -0.9% 55.60 thresh=1G/btrfs-10dd-4k-8p-4096M-1024M:10-X 56.21 -0.9% 55.69 thresh=1G/btrfs-1dd-4k-8p-4096M-1024M:10-X 30.66 -1.3% 30.26 thresh=1G/ext3-100dd-4k-8p-4096M-1024M:10-X 35.24 -1.5% 34.72 thresh=1G/ext3-10dd-4k-8p-4096M-1024M:10-X 43.58 -0.7% 43.28 thresh=1G/ext3-1dd-4k-8p-4096M-1024M:10-X 50.42 -0.8% 50.01 thresh=1G/ext4-100dd-4k-8p-4096M-1024M:10-X 56.23 -2.1% 55.03 thresh=1G/ext4-10dd-4k-8p-4096M-1024M:10-X 58.12 -1.2% 57.42 thresh=1G/ext4-1dd-4k-8p-4096M-1024M:10-X 41.76 -5.9% 39.31 thresh=1G/xfs-100dd-4k-8p-4096M-1024M:10-X 48.34 +0.8% 48.70 thresh=1G/xfs-10dd-4k-8p-4096M-1024M:10-X 52.36 -2.0% 51.29 thresh=1G/xfs-1dd-4k-8p-4096M-1024M:10-X 32.09 -0.0% 32.08 thresh=1M/ext4-10dd-4k-8p-4096M-1M:10-X 51.36 +3.3% 53.05 thresh=1M/ext4-1dd-4k-8p-4096M-1M:10-X 46.93 +0.4% 47.13 thresh=1M/ext4-2dd-4k-8p-4096M-1M:10-X 28.68 -4.9% 27.28 thresh=1M/xfs-10dd-4k-8p-4096M-1M:10-X 51.95 +3.0% 53.51 thresh=1M/xfs-1dd-4k-8p-4096M-1M:10-X 47.07 -15.5% 39.78 thresh=1M/xfs-2dd-4k-8p-4096M-1M:10-X 54.37 +3.0% 56.02 thresh=8M/btrfs-10dd-4k-8p-4096M-8M:10-X 56.12 +3.5% 58.06 thresh=8M/btrfs-1dd-4k-8p-4096M-8M:10-X 56.22 +2.9% 57.87 thresh=8M/btrfs-2dd-4k-8p-4096M-8M:10-X 32.21 +1.1% 32.55 thresh=8M/ext3-10dd-4k-8p-4096M-8M:10-X 45.37 +1.6% 46.10 thresh=8M/ext3-1dd-4k-8p-4096M-8M:10-X 43.71 +2.5% 44.81 thresh=8M/ext3-2dd-4k-8p-4096M-8M:10-X 35.58 +0.9% 35.90 thresh=8M/ext4-10dd-4k-8p-4096M-8M:10-X 56.39 -0.9% 55.91 thresh=8M/ext4-1dd-4k-8p-4096M-8M:10-X 51.26 +0.7% 51.61 thresh=8M/ext4-2dd-4k-8p-4096M-8M:10-X 31.07 -0.3% 30.97 thresh=8M/xfs-10dd-4k-8p-4096M-8M:10-X 55.44 -1.4% 54.68 thresh=8M/xfs-1dd-4k-8p-4096M-8M:10-X 47.59 -0.7% 47.25 thresh=8M/xfs-2dd-4k-8p-4096M-8M:10-X 2016.38 -0.7% 2002.40 TOTAL Thanks, Fengguang -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html