lkml.org 
[lkml]   [2017]   [Nov]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCHSET] blkcg: basic accounting and throttling fixes
Date
blkcg was often getting basic accounting numbers wildly wrong and
blk-throtl could throttle the same bio multiple times leading to
significantly lower limits being enforced than configured.

This patchset contains the following seven patches to update request
cgroup membership tracking and fix the bugs.

0001-blkcg-relocate-__blkg_release_rcu.patch
0002-blkcg-use-percpu_ref-for-blkcg_gq-refcnt.patch
0003-blkcg-associate-a-request-with-its-blkcg_gq-instead-.patch
0004-blkcg-refactor-blkcg_gq-lookup-and-creation-in-blkcg.patch
0005-blkcg-associate-blk-mq-requests-with-the-matching-bl.patch
0006-blkcg-account-requests-instead-of-bios-for-request-b.patch
0007-blk-throtl-don-t-throttle-the-same-IO-multiple-times.patch

0001-0005 update request cgroup membership tracking so that the
association is always available.

0006 makes blkcg account requests instead of bios as bios don't really
have much to do with what's going on the system.

0007 prevents blk-throttle from throttling the same IO multiple times.

The patches are also available in the following git branch.

git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git review-blkcg-fixes

diffstat follows. Thanks.

block/blk-cgroup.c | 69 +++++++++++++----------
block/blk-core.c | 13 +++-
block/blk-mq.c | 9 ++-
block/blk-mq.h | 1
block/blk-throttle.c | 10 ---
include/linux/blk-cgroup.h | 134 ++++++++++++++++++++++++++++++++++++---------
include/linux/blkdev.h | 2
7 files changed, 169 insertions(+), 69 deletions(-)

--
tejun

\
 
 \ /
  Last update: 2017-11-12 23:27    [W:0.112 / U:3.460 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site