Messages in this thread | | | Subject | Re: [PATCH] ion: Consider ion pool pages as indirectly reclaimable | From | Laura Abbott <> | Date | Fri, 27 Apr 2018 14:30:59 -0700 |
| |
On 04/27/2018 02:29 AM, vjitta@codeaurora.org wrote: > On 2018-04-27 10:40, vjitta@codeaurora.org wrote: >> On 2018-04-25 21:17, Laura Abbott wrote: >>> On 04/24/2018 08:43 PM, vjitta@codeaurora.org wrote: >>>> From: Vijayanand Jitta <vjitta@codeaurora.org> >>>> >>>> An issue is observed where mallocs are failing due to overcommit failure. >>>> The failure happens when there is high ION page pool since ION page >>>> pool is not considered reclaimable by the overcommit calculation code. >>>> This change considers ion pool pages as indirectly reclaimable and thus >>>> accounted as available memory in the overcommit calculation. >>>> >>>> Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org> >>>> --- >>>> drivers/staging/android/ion/ion_page_pool.c | 5 +++++ >>>> 1 file changed, 5 insertions(+) >>>> >>>> diff --git a/drivers/staging/android/ion/ion_page_pool.c b/drivers/staging/android/ion/ion_page_pool.c >>>> index db8f614..9bc56eb 100644 >>>> --- a/drivers/staging/android/ion/ion_page_pool.c >>>> +++ b/drivers/staging/android/ion/ion_page_pool.c >>>> @@ -32,6 +32,9 @@ static void ion_page_pool_add(struct ion_page_pool *pool, struct page *page) >>>> list_add_tail(&page->lru, &pool->low_items); >>>> pool->low_count++; >>>> } >>>> + >>>> + mod_node_page_state(page_pgdat(page), NR_INDIRECTLY_RECLAIMABLE_BYTES, >>>> + (1 << (PAGE_SHIFT + pool->order))); >>>> mutex_unlock(&pool->mutex); >>>> } >>>> @@ -50,6 +53,8 @@ static struct page *ion_page_pool_remove(struct ion_page_pool *pool, bool high) >>>> } >>>> list_del(&page->lru); >>>> + mod_node_page_state(page_pgdat(page), NR_INDIRECTLY_RECLAIMABLE_BYTES, >>>> + -(1 << (PAGE_SHIFT + pool->order))); >>>> return page; >>>> } >>>> >>> >>> I'm sure this fixes the problem but I don't think we want to >>> start throwing page adjustments into Ion. Why isn't this >>> memory already considered reclaimable by existing calculations? >>> >>> Thanks, >>> Laura >> >> You can refer to discussion here https://lkml.org/lkml/2018/3/5/361 introducing >> NR_INDIRECTLY_RECLAIMABLE_BYTES for the memory which is not currently considered >> as reclaimable >> >> Thanks, >> Vijay > > There was also discussion specific to ion in that thread you can find it here > https://lkml.org/lkml/2018/4/25/642 > > Thanks, > Vijay
Thanks for pointing that thread out. I'm still a little wary since Ion is in staging but if the rest of mm are okay with it
Acked-by: Laura Abbott <labbott@redhat.com>
Thanks, Laura
| |