This patch adds 2 new GFP flags to correspond to the 3 allocation types. The third state is indicated by neither flag corresponding to the first two states being set. It then modifies appropriate allocator calls to use these new flags. The flags are: __GFP_USER, which corresponds to easily reclaimable pages __GFP_KERNRCLM, which corresponds to userspace pages Also note that the __GFP_USER flag should be reusable by the HARDWALL folks as well. This patch was originally authored by Mel Gorman, and heavily modified by me. Signed-off-by: Mel Gorman Signed-off-by: Joel Schopp