[PATCHv3 0/2] staging: ion: enable shrinking of pool

Gioh Kim gioh.kim at lge.com
Wed Jul 1 11:02:56 UTC 2015


Hello,

The ion has internal page pool to keep freed pages.
There is no way to shrink the pool so that the pool sometimes
grows too big.

For example my platform allocates some graphic memory via ion.
Sometimes the pool can be several hundreds MB. I want to
flush the pool before critical page shortage.


This patch set combines 2 patches like followings.

1. Patch 1/2: make individual pool work by page unit
This patch makes the pool be shrinked in page unit.

2. Patch 2/2: enable pool shrink
This patch enables pool shrink and make debugfs to specify shrink amount.
The pool shrink is almost implemented but it is not complete.
This patch completes the implementation.

For instance, this shrinks all pages in every pool.
echo 0 > /sys/kernel/debug/ion/heaps/system_shrink
If you want specify the number of pages:
echo 30 > /sys/kernel/debug/ion/heaps/system_shrink

My thanks to Laura Abbott for reviews of the v2 patchset. Most
of the changes below were based on her feedback.

Changes since v2:
- Rebased to v4.1
- Call shrinker interfaces instead of calling heap->ops->shrink
- Add more description about the reason
- Remove a patch to limit pool size

This patchset is based on v4.1


Gioh Kim (2):
  staging: ion: shrink page-pool by page unit
  staging: ion: debugfs to shrink pool

 drivers/staging/android/ion/ion.c             |   22 +++++++++-------------
 drivers/staging/android/ion/ion_page_pool.c   |    5 +++--
 drivers/staging/android/ion/ion_system_heap.c |   16 ++++++++++++++--
 3 files changed, 26 insertions(+), 17 deletions(-)

-- 
1.7.9.5



More information about the devel mailing list