diff --git a/include/linux/types.h b/include/linux/types.h index f0efcd2e..7144f17f 100644 --- a/include/linux/types.h +++ b/include/linux/types.h @@ -25,7 +25,7 @@ typedef unsigned short umode_t; typedef unsigned gfp_t; -#define GFP_KERNEL 0 +#define GFP_KERNEL 1 #define GFP_ATOMIC 0 #define GFP_NOFS 0 #define GFP_NOIO 0 diff --git a/linux/shrinker.c b/linux/shrinker.c index 25cdfbb6..0f73620b 100644 --- a/linux/shrinker.c +++ b/linux/shrinker.c @@ -88,6 +88,9 @@ void run_shrinkers(gfp_t gfp_mask, bool allocation_failed) struct sysinfo info; s64 want_shrink; + if (!(gfp_mask & GFP_KERNEL)) + return; + /* Fast out if there are no shrinkers to run. */ if (list_empty(&shrinker_list)) return;