Re: [PATCH v2 0/1] xen/blkback: Aggressively shrink page pools if a memory pressure is detected

From: sjpark
Date: Thu Dec 05 2019 - 10:16:27 EST


On 05.12.19 16:09, SeongJae Park wrote:
> Each `blkif` has a free pages pool for the grant mapping. The size of
> the pool starts from zero and be increased on demand while processing
> the I/O requests. If current I/O requests handling is finished or 100
> milliseconds has passed since last I/O requests handling, it checks and
> shrinks the pool to not exceed the size limit, `max_buffer_pages`.
>
> Therefore, `blkfront` running guests can cause a memory pressure in the
> `blkback` running guest by attaching a large number of block devices and
> inducing I/O. System administrators can avoid such problematic
> situations by limiting the maximum number of devices each guest can
> attach. However, finding the optimal limit is not so easy. Improper
> set of the limit can result in the memory pressure or a resource
> underutilization. This commit avoids such problematic situations by
> shrinking the pools aggressively (further the limit) for a while (users
> can set this duration via a module parameter) if a memory pressure is
> detected.
>
>
> Base Version
> ------------
>
> This patch is based on v5.4. A complete tree is also available at my
> public git repo:
> https://github.com/sjp38/linux/tree/blkback_aggressive_shrinking_v2
>
>
> Patch History
> -------------
>
> Changes from v1 (https://lore.kernel.org/xen-devel/20191204113419.2298-1-sjpark@xxxxxxxxxx/)
> - Adjust the description to not use the term, `arbitrarily` (suggested
> by Paul Durrant)
> - Specify time unit of the duration in the parameter description,
> (suggested by Maximilian Heyne)
> - Change default aggressive shrinking duration from 1ms to 10ms
> - Merged two patches into one single patch
>
>
> SeongJae Park (1):
> xen/blkback: Aggressively shrink page pools if a memory pressure is
> detected
>
> drivers/block/xen-blkback/blkback.c | 35 +++++++++++++++++++++++++++--
> 1 file changed, 33 insertions(+), 2 deletions(-)


CC-ing xen-devel@xxxxxxxxxxxxxxxxxxxx


Thanks,
SeongJae Park

>