diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/shrinker.h | 2 | ||||
-rw-r--r-- | include/linux/slab.h | 4 | ||||
-rw-r--r-- | include/linux/vmalloc.h | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/include/linux/shrinker.h b/include/linux/shrinker.h index 626b768c..eba6cfdd 100644 --- a/include/linux/shrinker.h +++ b/include/linux/shrinker.h @@ -25,6 +25,6 @@ struct shrinker { int register_shrinker(struct shrinker *); void unregister_shrinker(struct shrinker *); -void run_shrinkers(void); +void run_shrinkers(gfp_t gfp_mask, bool); #endif /* __TOOLS_LINUX_SHRINKER_H */ diff --git a/include/linux/slab.h b/include/linux/slab.h index bc99973f..557c0411 100644 --- a/include/linux/slab.h +++ b/include/linux/slab.h @@ -20,7 +20,7 @@ static inline void *kmalloc(size_t size, gfp_t flags) void *p; do { - run_shrinkers(); + run_shrinkers(flags, i != 0); if (size) { size_t alignment = min(rounddown_pow_of_two(size), (size_t)PAGE_SIZE); @@ -83,7 +83,7 @@ static inline struct page *alloc_pages(gfp_t flags, unsigned int order) void *p; do { - run_shrinkers(); + run_shrinkers(flags, i != 0); p = aligned_alloc(PAGE_SIZE, size); if (p && (flags & __GFP_ZERO)) diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h index ccb319eb..965e341d 100644 --- a/include/linux/vmalloc.h +++ b/include/linux/vmalloc.h @@ -20,7 +20,7 @@ static inline void *__vmalloc(unsigned long size, gfp_t gfp_mask) size = round_up(size, PAGE_SIZE); do { - run_shrinkers(); + run_shrinkers(gfp_mask, i != 0); p = aligned_alloc(PAGE_SIZE, size); if (p && gfp_mask & __GFP_ZERO) |