summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorMel Gorman2007-12-18 01:20:05 +0100
committerLinus Torvalds2007-12-18 04:28:16 +0100
commit81eabcbe0b991ddef5216f30ae91c4b226d54b6d (patch)
treef444d157d56583e034d3384a0102b5cb22d08743 /drivers
parentapm_event{,info}_t are userspace types (diff)
downloadkernel-qcow2-linux-81eabcbe0b991ddef5216f30ae91c4b226d54b6d.tar.gz
kernel-qcow2-linux-81eabcbe0b991ddef5216f30ae91c4b226d54b6d.tar.xz
kernel-qcow2-linux-81eabcbe0b991ddef5216f30ae91c4b226d54b6d.zip
mm: fix page allocation for larger I/O segments
In some cases the IO subsystem is able to merge requests if the pages are adjacent in physical memory. This was achieved in the allocator by having expand() return pages in physically contiguous order in situations were a large buddy was split. However, list-based anti-fragmentation changed the order pages were returned in to avoid searching in buffered_rmqueue() for a page of the appropriate migrate type. This patch restores behaviour of rmqueue_bulk() preserving the physical order of pages returned by the allocator without incurring increased search costs for anti-fragmentation. Signed-off-by: Mel Gorman <mel@csn.ul.ie> Cc: James Bottomley <James.Bottomley@steeleye.com> Cc: Jens Axboe <jens.axboe@oracle.com> Cc: Mark Lord <mlord@pobox.com Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers')
0 files changed, 0 insertions, 0 deletions