Re: [PATCH v2 2/2] blk-cgroup: Optimize blkcg_rstat_flush()

From: Waiman Long
Date: Wed Jun 01 2022 - 17:32:20 EST



On 6/1/22 17:28, Tejun Heo wrote:
On Wed, Jun 01, 2022 at 05:25:53PM -0400, Waiman Long wrote:
I think the best way to protect against blkg destruction is to get a percpu
reference when put into lockless list and put it back when removed.

BTW, when I ran a test that continuously create and destroy containers, the
total number of blkcg's kept on increasing. There are some freeing of
blkcg's but no freeing of blkg's at all. Maybe we have a similar dying
blkcg's problem here. I will take a further look at that when I have time.
They get pinned by per-cgroup writebacks which gets pinned by lingering page
cache and other remaining accounted memory areas, so I think they can hang
around if there's no memory pressure. But, yeah, it'd be great to verify
that they actually go away under memory pressure.

Thanks.

Thanks for the explanation. It makes sense to me.

Cheers,
Longman