mm: page_counter: let page_counter_try_charge() return bool
page_counter_try_charge() currently returns 0 on success and -ENOMEM on failure, which is surprising behavior given the function name. Make it follow the expected pattern of try_stuff() functions that return a boolean true to indicate success, or false for failure. Signed-off-by: Johannes Weiner <hannes@cmpxchg.org> Acked-by: Michal Hocko <mhocko@suse.com> Cc: Vladimir Davydov <vdavydov@virtuozzo.com Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Šī revīzija ir iekļauta:

revīziju iesūtīja
Linus Torvalds

vecāks
f5fc3c5d81
revīzija
6071ca5201
@@ -2016,8 +2016,8 @@ retry:
|
||||
return 0;
|
||||
|
||||
if (!do_swap_account ||
|
||||
!page_counter_try_charge(&memcg->memsw, batch, &counter)) {
|
||||
if (!page_counter_try_charge(&memcg->memory, batch, &counter))
|
||||
page_counter_try_charge(&memcg->memsw, batch, &counter)) {
|
||||
if (page_counter_try_charge(&memcg->memory, batch, &counter))
|
||||
goto done_restock;
|
||||
if (do_swap_account)
|
||||
page_counter_uncharge(&memcg->memsw, batch);
|
||||
@@ -2381,14 +2381,13 @@ int __memcg_kmem_charge_memcg(struct page *page, gfp_t gfp, int order,
|
||||
{
|
||||
unsigned int nr_pages = 1 << order;
|
||||
struct page_counter *counter;
|
||||
int ret = 0;
|
||||
int ret;
|
||||
|
||||
if (!memcg_kmem_is_active(memcg))
|
||||
return 0;
|
||||
|
||||
ret = page_counter_try_charge(&memcg->kmem, nr_pages, &counter);
|
||||
if (ret)
|
||||
return ret;
|
||||
if (!page_counter_try_charge(&memcg->kmem, nr_pages, &counter))
|
||||
return -ENOMEM;
|
||||
|
||||
ret = try_charge(memcg, gfp, nr_pages);
|
||||
if (ret) {
|
||||
|
Atsaukties uz šo jaunā problēmā
Block a user