loop: charge i/o to mem and blk cg
The current code only associates with the existing blkcg when aio is used to access the backing file. This patch covers all types of i/o to the backing file and also associates the memcg so if the backing file is on tmpfs, memory is charged appropriately. This patch also exports cgroup_get_e_css and int_active_memcg so it can be used by the loop module. Link: https://lkml.kernel.org/r/20210610173944.1203706-4-schatzberg.dan@gmail.com Signed-off-by:Dan Schatzberg <schatzberg.dan@gmail.com> Acked-by:
Johannes Weiner <hannes@cmpxchg.org> Acked-by:
Jens Axboe <axboe@kernel.dk> Cc: Chris Down <chris@chrisdown.name> Cc: Michal Hocko <mhocko@suse.com> Cc: Ming Lei <ming.lei@redhat.com> Cc: Shakeel Butt <shakeelb@google.com> Cc: Tejun Heo <tj@kernel.org> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
Showing
- drivers/block/loop.c 41 additions, 20 deletionsdrivers/block/loop.c
- drivers/block/loop.h 2 additions, 1 deletiondrivers/block/loop.h
- include/linux/memcontrol.h 6 additions, 0 deletionsinclude/linux/memcontrol.h
- kernel/cgroup/cgroup.c 1 addition, 0 deletionskernel/cgroup/cgroup.c
- mm/memcontrol.c 1 addition, 0 deletionsmm/memcontrol.c
Please register or sign in to comment