gpu: ion: Clear GFP_WAIT flag on high order allocations
authorRebecca Schultz Zavin <rebecca@android.com>
Fri, 13 Dec 2013 22:24:17 +0000 (14:24 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 14 Dec 2013 16:55:40 +0000 (08:55 -0800)
This will prevent the kernel from kicking off compaction
when higher order allocations are made.  Instead we will
get these high order allocations only if they are readily
available.

Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
[jstultz: modified patch to apply to staging directory]
Signed-off-by: John Stultz <john.stultz@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/android/ion/ion_system_heap.c

index 2204206ef5ff1de5ca7e128f87b73c3c950d387b..ad4933e1b4211b927da9af5e67f9855c789bc79d 100644 (file)
@@ -28,7 +28,7 @@
 
 static unsigned int high_order_gfp_flags = (GFP_HIGHUSER | __GFP_ZERO |
                                            __GFP_NOWARN | __GFP_NORETRY |
-                                           __GFP_NO_KSWAPD);
+                                           __GFP_NO_KSWAPD) & ~__GFP_WAIT;
 static unsigned int low_order_gfp_flags  = (GFP_HIGHUSER | __GFP_ZERO |
                                         __GFP_NOWARN);
 static const unsigned int orders[] = {8, 4, 0};