{"push_id":591195976,"size":2,"distinct_size":2,"ref":"refs/heads/cm-10.1","head":"df05796ce4fcef6c89f41aabadb95d4060d897e7","before":"34c444fba1321dc2dfd6949359ca7ec8a082a595","commits":[{"sha":"967d567c4ea75c3bc6a70e1c8b2337a9feeb8e03","author":{"email":"b31080368c147fc9370313d58a312721a8fdce86@linux.vnet.ibm.com","name":"Christian Ehrhardt"},"message":"swap: allow swap readahead to be merged\n\nSwap readahead works fine, but the I/O to disk is almost always done in\npage size requests, despite the fact that readahead submits\n1<<page-cluster pages at a time.\n\nOn older kernels the old per device plugging behavior might have captured\nthis and merged the requests, but currently all comes down to much more\nI/Os than required.\n\nOn a single device this might not be an issue, but as soon as a server\nruns on shared san resources savin I/Os not only improves swapin\nthroughput but also provides a lower resource utilization.\n\nWith a load running KVM in a lot of memory overcommitment (the hot memory\nis 1.5 times the host memory) swapping throughput improves significantly\nand the lead feels more responsive as well as achieves more throughput.\n\nIn a test setup with 16 swap disks running blocktrace on one of those disks\nshows the improved merging:\nPrior:\nReads Queued:     560,888,    2,243MiB  Writes Queued:     226,242,  904,968KiB\nRead Dispatches:  544,701,    2,243MiB  Write Dispatches:  159,318,  904,968KiB\nReads Requeued:         0               Writes Requeued:         0\nReads Completed:  544,716,    2,243MiB  Writes Completed:  159,321,  904,980KiB\nRead Merges:       16,187,   64,748KiB  Write Merges:       61,744,  246,976KiB\nIO unplugs:       149,614               Timer unplugs:       2,940\n\nWith the patch:\nReads Queued:     734,315,    2,937MiB  Writes Queued:     300,188,    1,200MiB\nRead Dispatches:  214,972,    2,937MiB  Write Dispatches:  215,176,    1,200MiB\nReads Requeued:         0               Writes Requeued:         0\nReads Completed:  214,971,    2,937MiB  Writes Completed:  215,177,    1,200MiB\nRead Merges:      519,343,    2,077MiB  Write Merges:       73,325,  293,300KiB\nIO unplugs:       337,130               Timer unplugs:      11,184\n\nI got ~10% to ~40% more throughput in my cases and at the same time much\nlower cpu consumption when broken down per transferred kilobyte (the\nmajority of that due to saved interrupts and better cache handling).  In a\nshared SAN others might get an additional benefit as well, because this\nnow causes less protocol overhead.\n\nSigned-off-by: Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com>\nAcked-by: Rik van Riel <riel@redhat.com>\nAcked-by: Jens Axboe <axboe@kernel.dk>\nReviewed-by: Minchan Kim <minchan@kernel.org>\nCc: Hugh Dickins <hughd@google.com>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: Blechd0se <alex.christ@hotmail.de>","distinct":true,"url":"https://api.github.com/repos/CM10-1/samsung-kernel-msm7x30/commits/967d567c4ea75c3bc6a70e1c8b2337a9feeb8e03"},{"sha":"df05796ce4fcef6c89f41aabadb95d4060d897e7","author":{"email":"f4461cfe90d9062a7e55a35647585f39eb23144b@motorola.com","name":"Yuanyuan Zhong"},"message":"mm: vmscan: do not count anon pages as reclaimable if swap is small\n\nWhen swap size is smaller than ram size, not all anon pages can be\nwritten to swap space. So do not count anon pages as reclaimable.\nThis will increase the slab scan rate under memory pressure.\n\nChange-Id: Ic4fe3c5f3e98e56fad1248f555f916cd75189324\nSigned-off-by: Yuanyuan Zhong <zyy@motorola.com>\nReviewed-on: http://gerrit.mot.com/697742\nTested-by: Jira Key <jirakey@motorola.com>\nReviewed-by: Igor Kovalenko <igork@motorola.com>\nSLTApproved: Connie Zhao <czhao1@motorola.com>\nSubmit-Approved: Jira Key <jirakey@motorola.com>\n(cherry picked from commit bc0d09af782178758f17ca23bae8017cbf7dd933)","distinct":true,"url":"https://api.github.com/repos/CM10-1/samsung-kernel-msm7x30/commits/df05796ce4fcef6c89f41aabadb95d4060d897e7"}]}