]> git.baikalelectronics.ru Git - kernel.git/commit
Group high-order atomic allocations
authorMel Gorman <mel@csn.ul.ie>
Tue, 16 Oct 2007 08:25:53 +0000 (01:25 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Tue, 16 Oct 2007 16:43:00 +0000 (09:43 -0700)
commit882ff1b191258fdbc915b9fb1c60ad88e435f49d
tree37c7f36913daf4bc0a68a1d0ba1cc30ee0d4e307
parent67d7d05ef2ed60cd19713367b4d2491393269e33
Group high-order atomic allocations

In rare cases, the kernel needs to allocate a high-order block of pages
without sleeping.  For example, this is the case with e1000 cards configured
to use jumbo frames.  Migrating or reclaiming pages in this situation is not
an option.

This patch groups these allocations together as much as possible by adding a
new MIGRATE_TYPE.  The MIGRATE_HIGHATOMIC type are exactly what they sound
like.  Care is taken that pages of other migrate types do not use the same
blocks as high-order atomic allocations.

Signed-off-by: Mel Gorman <mel@csn.ul.ie>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/linux/mmzone.h
mm/page_alloc.c