[PATCH V3 0/7] loop: cleanup charging io to mem/blkcg

From: Ming Lei
Date: Thu Aug 05 2021 - 22:34:44 EST


Hello Guys,

Cleanup charging io to mem/blkcg a bit:

- avoid to store blkcg_css/memcg_css in loop_cmd, and store blkcg_css in
loop_worker instead

- avoid to acquire ->lo_work_lock in IO path

- simplify blkcg_css query via xarray

- other misc cleanup

V3:
- one patch style change in 7/7
- rebase patch 4/7 against for-5.15/block
- add acked-by tag

V2:
- add helper of memcg_get_e_css
- cleanup #ifdef
- improve the last patch, as discussed with Dan Schatzberg


Ming Lei (7):
mm: memcontrol: add helper of memcg_get_e_css
loop: clean up blkcg association
loop: conver timer for monitoring idle worker into dwork
loop: add __loop_free_idle_workers() for covering freeing workers in
clearing FD
loop: improve loop_process_work
loop: use xarray to store workers
loop: don't add worker into idle list

drivers/block/loop.c | 320 ++++++++++++++++++++-----------------
drivers/block/loop.h | 7 +-
include/linux/memcontrol.h | 8 +
3 files changed, 188 insertions(+), 147 deletions(-)

--
2.31.1