powerpc/pseries/cmm: Use adjust_managed_page_count() insted of totalram_pages_*
adjust_managed_page_count() performs a totalram_pages_add(), but also adjusts the managed pages of the zone. Let's use that instead, similar to virtio-balloon. Use it before freeing a page. Signed-off-by: David Hildenbrand <david@redhat.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20191031142933.10779-6-david@redhat.com
This commit is contained in:
Родитель
4a1745c5bf
Коммит
287b89773d
|
@ -164,7 +164,7 @@ static long cmm_alloc_pages(long nr)
|
|||
|
||||
list_add(&page->lru, &cmm_page_list);
|
||||
loaned_pages++;
|
||||
totalram_pages_dec();
|
||||
adjust_managed_page_count(page, -1);
|
||||
spin_unlock(&cmm_lock);
|
||||
nr--;
|
||||
}
|
||||
|
@ -191,10 +191,10 @@ static long cmm_free_pages(long nr)
|
|||
break;
|
||||
plpar_page_set_active(page);
|
||||
list_del(&page->lru);
|
||||
adjust_managed_page_count(page, 1);
|
||||
__free_page(page);
|
||||
loaned_pages--;
|
||||
nr--;
|
||||
totalram_pages_inc();
|
||||
}
|
||||
spin_unlock(&cmm_lock);
|
||||
cmm_dbg("End request with %ld pages unfulfilled\n", nr);
|
||||
|
@ -518,10 +518,10 @@ static int cmm_mem_going_offline(void *arg)
|
|||
continue;
|
||||
plpar_page_set_active(page);
|
||||
list_del(&page->lru);
|
||||
adjust_managed_page_count(page, 1);
|
||||
__free_page(page);
|
||||
freed++;
|
||||
loaned_pages--;
|
||||
totalram_pages_inc();
|
||||
}
|
||||
|
||||
spin_unlock(&cmm_lock);
|
||||
|
|
Загрузка…
Ссылка в новой задаче