mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
mm: page_alloc: generalize the dirty balance reserve
The dirty balance reserve that dirty throttling has to consider is merely memory not available to userspace allocations. There is nothing writeback-specific about it. Generalize the name so that it's reusable outside of that context. Signed-off-by: Johannes Weiner <[email protected]> Cc: Rik van Riel <[email protected]> Cc: Mel Gorman <[email protected]> Acked-by: Michal Hocko <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
c20cd45eb0
commit
a8d0143730
4 changed files with 18 additions and 24 deletions
|
|
@ -278,7 +278,12 @@ static unsigned long zone_dirtyable_memory(struct zone *zone)
|
|||
unsigned long nr_pages;
|
||||
|
||||
nr_pages = zone_page_state(zone, NR_FREE_PAGES);
|
||||
nr_pages -= min(nr_pages, zone->dirty_balance_reserve);
|
||||
/*
|
||||
* Pages reserved for the kernel should not be considered
|
||||
* dirtyable, to prevent a situation where reclaim has to
|
||||
* clean pages in order to balance the zones.
|
||||
*/
|
||||
nr_pages -= min(nr_pages, zone->totalreserve_pages);
|
||||
|
||||
nr_pages += zone_page_state(zone, NR_INACTIVE_FILE);
|
||||
nr_pages += zone_page_state(zone, NR_ACTIVE_FILE);
|
||||
|
|
@ -332,7 +337,12 @@ static unsigned long global_dirtyable_memory(void)
|
|||
unsigned long x;
|
||||
|
||||
x = global_page_state(NR_FREE_PAGES);
|
||||
x -= min(x, dirty_balance_reserve);
|
||||
/*
|
||||
* Pages reserved for the kernel should not be considered
|
||||
* dirtyable, to prevent a situation where reclaim has to
|
||||
* clean pages in order to balance the zones.
|
||||
*/
|
||||
x -= min(x, totalreserve_pages);
|
||||
|
||||
x += global_page_state(NR_INACTIVE_FILE);
|
||||
x += global_page_state(NR_ACTIVE_FILE);
|
||||
|
|
|
|||
Loading…
Reference in a new issue