mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Vivek Goyal <vgoyal@redhat.com>
To: Tejun Heo <tj@kernel.org>
Cc: axboe@kernel.dk, ctalbott@google.com, rni@google.com,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCHSET] blkcg: accumulated blkcg updates
Date: Wed, 22 Feb 2012 14:34:29 -0500	[thread overview]
Message-ID: <20120222193429.GA7635@redhat.com> (raw)
In-Reply-To: <1329875223-5102-1-git-send-email-tj@kernel.org>

On Tue, Feb 21, 2012 at 05:46:27PM -0800, Tejun Heo wrote:
> Hello, Jens.
> 
> This is accumulation of the following three patchsets on top of
> block/for-linus - 621032ad6e "block: exit_io_context() should call
> elevator_exit_icq_fn()".
> 
> [1] blkcg: kill policy node and blkg->dev, take#4
> [2] blkcg: unify blkgs for different policies
> [3] blkcg: update locking and fix stacking
> 

This series looks good to me. We just need two more pieces which need
to be pushed along with this series.

- Do not cleanup all blkg upon policy change. Just reclaim policy
  data/blkg which belong to policy.

- per cpu stat allocation from async context. 

Thanks
Vivek

> This patchset collects all three patchset into single series with all
> the updated versions of patches included.  There are also some minor
> changes for build fixes and typos.  Please refer to patch descriptions
> of each patchset for further details.
> 
> This patchset contains the following 36 patches.
> 
>   0001-block-blk-throttle-should-be-drained-regardless-of-q.patch
>   0002-blkcg-make-CONFIG_BLK_CGROUP-bool.patch
>   0003-cfq-don-t-register-propio-policy-if-CONFIG_CFQ_GROUP.patch
>   0004-elevator-clear-auxiliary-data-earlier-during-elevato.patch
>   0005-elevator-make-elevator_init_fn-return-0-errno.patch
>   0006-block-implement-blk_queue_bypass_start-end.patch
>   0007-block-extend-queue-bypassing-to-cover-blkcg-policies.patch
>   0008-blkcg-shoot-down-blkio_groups-on-elevator-switch.patch
>   0009-blkcg-move-rcu_read_lock-outside-of-blkio_group-get-.patch
>   0010-blkcg-update-blkg-get-functions-take-blkio_cgroup-as.patch
>   0011-blkcg-use-q-and-plid-instead-of-opaque-void-for-blki.patch
>   0012-blkcg-add-blkio_policy-array-and-allow-one-policy-pe.patch
>   0013-blkcg-use-the-usual-get-blkg-path-for-root-blkio_gro.patch
>   0014-blkcg-factor-out-blkio_group-creation.patch
>   0015-blkcg-don-t-allow-or-retain-configuration-of-missing.patch
>   0016-blkcg-kill-blkio_policy_node.patch
>   0017-blkcg-kill-the-mind-bending-blkg-dev.patch
> 
>   0018-blkcg-let-blkio_group-point-to-blkio_cgroup-directly.patch
>   0019-blkcg-add-blkcg_-init-drain-exit-_queue.patch
>   0020-blkcg-clear-all-request_queues-on-blkcg-policy-un-re.patch
>   0021-blkcg-let-blkcg-core-handle-policy-private-data-allo.patch
>   0022-blkcg-move-refcnt-to-blkcg-core.patch
>   0023-blkcg-make-blkg-pd-an-array-and-move-configuration-a.patch
>   0024-blkcg-don-t-use-blkg-plid-in-stat-related-functions.patch
>   0025-blkcg-move-per-queue-blkg-list-heads-and-counters-to.patch
>   0026-blkcg-let-blkcg-core-manage-per-queue-blkg-list-and-.patch
>   0027-blkcg-unify-blkg-s-for-blkcg-policies.patch
>   0028-blkcg-use-double-locking-instead-of-RCU-for-blkg-syn.patch
>   0029-blkcg-drop-unnecessary-RCU-locking.patch
> 
>   0030-block-restructure-get_request.patch
>   0031-block-interface-update-for-ioc-icq-creation-function.patch
>   0032-block-ioc_task_link-can-t-fail.patch
>   0033-block-add-io_context-active_ref.patch
>   0034-block-implement-bio_associate_current.patch
>   0035-block-make-block-cgroup-policies-follow-bio-task-ass.patch
>   0036-block-make-blk-throttle-preserve-the-issuing-task-on.patch
> 
> 0001-0017 kill policy node and blkg->dev and also available in the
> following git branch.
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git blkcg-kill-pn
> 
> 0018-0029 unify blkgs for different policies and update locking.  Note
> that 0028 and 0029 belonged to the third patchset in the original
> posting.
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git blkcg-unified-blkg
> 
> 0030-0036 fix stacking of blkcg policies.
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git blkcg-stacking
> 
> Thank you.
> 
> diffstat follows.
> 
>  block/Kconfig.iosched     |    4 
>  block/blk-cgroup.c        | 1258 ++++++++++++++++++++++++----------------------
>  block/blk-cgroup.h        |  286 ++++++----
>  block/blk-core.c          |  179 ++++--
>  block/blk-ioc.c           |   58 +-
>  block/blk-sysfs.c         |    6 
>  block/blk-throttle.c      |  450 +++-------------
>  block/blk.h               |   32 -
>  block/cfq-iosched.c       |  509 +++++-------------
>  block/cfq.h               |  113 ++--
>  block/deadline-iosched.c  |    8 
>  block/elevator.c          |  123 +---
>  block/noop-iosched.c      |    8 
>  fs/bio.c                  |   61 ++
>  include/linux/bio.h       |    8 
>  include/linux/blk_types.h |   10 
>  include/linux/blkdev.h    |   12 
>  include/linux/elevator.h  |    8 
>  include/linux/iocontext.h |   32 -
>  init/Kconfig              |    2 
>  kernel/fork.c             |    5 
>  21 files changed, 1521 insertions(+), 1651 deletions(-)
> 
> Thanks.
> 
> --
> tejun
> 
> [1] http://thread.gmane.org/gmane.linux.kernel/1247152
> [2] http://thread.gmane.org/gmane.linux.kernel/1247287
> [3] http://thread.gmane.org/gmane.linux.kernel/1254428

  parent reply	other threads:[~2012-02-22 19:34 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-22  1:46 Tejun Heo
2012-02-22  1:46 ` [PATCH 01/36] block: blk-throttle should be drained regardless of q->elevator Tejun Heo
2012-02-22  1:46 ` [PATCH 02/36] blkcg: make CONFIG_BLK_CGROUP bool Tejun Heo
2012-02-22  1:46 ` [PATCH 03/36] cfq: don't register propio policy if !CONFIG_CFQ_GROUP_IOSCHED Tejun Heo
2012-02-22  1:46 ` [PATCH 04/36] elevator: clear auxiliary data earlier during elevator switch Tejun Heo
2012-02-22  1:46 ` [PATCH 05/36] elevator: make elevator_init_fn() return 0/-errno Tejun Heo
2012-02-22  1:46 ` [PATCH 06/36] block: implement blk_queue_bypass_start/end() Tejun Heo
2012-02-22  1:46 ` [PATCH 07/36] block: extend queue bypassing to cover blkcg policies Tejun Heo
2012-02-22  1:46 ` [PATCH 08/36] blkcg: shoot down blkio_groups on elevator switch Tejun Heo
2012-02-22  1:46 ` [PATCH 09/36] blkcg: move rcu_read_lock() outside of blkio_group get functions Tejun Heo
2012-02-22  1:46 ` [PATCH 10/36] blkcg: update blkg get functions take blkio_cgroup as parameter Tejun Heo
2012-02-22  1:46 ` [PATCH 11/36] blkcg: use q and plid instead of opaque void * for blkio_group association Tejun Heo
2012-02-22  1:46 ` [PATCH 12/36] blkcg: add blkio_policy[] array and allow one policy per policy ID Tejun Heo
2012-02-22  1:46 ` [PATCH 13/36] blkcg: use the usual get blkg path for root blkio_group Tejun Heo
2012-02-22  1:46 ` [PATCH 14/36] blkcg: factor out blkio_group creation Tejun Heo
2012-02-22  1:46 ` [PATCH 15/36] blkcg: don't allow or retain configuration of missing devices Tejun Heo
2012-02-22  1:46 ` [PATCH 16/36] blkcg: kill blkio_policy_node Tejun Heo
2012-02-22  1:46 ` [PATCH 17/36] blkcg: kill the mind-bending blkg->dev Tejun Heo
2012-02-22  1:46 ` [PATCH 18/36] blkcg: let blkio_group point to blkio_cgroup directly Tejun Heo
2012-02-22  1:46 ` [PATCH 19/36] blkcg: add blkcg_{init|drain|exit}_queue() Tejun Heo
2012-02-22  1:46 ` [PATCH 20/36] blkcg: clear all request_queues on blkcg policy [un]registrations Tejun Heo
2012-02-22  1:46 ` [PATCH 21/36] blkcg: let blkcg core handle policy private data allocation Tejun Heo
2012-02-22  1:46 ` [PATCH 22/36] blkcg: move refcnt to blkcg core Tejun Heo
2012-02-22  1:46 ` [PATCH 23/36] blkcg: make blkg->pd an array and move configuration and stats into it Tejun Heo
2012-02-22  1:46 ` [PATCH 24/36] blkcg: don't use blkg->plid in stat related functions Tejun Heo
2012-02-22  1:46 ` [PATCH 25/36] blkcg: move per-queue blkg list heads and counters to queue and blkg Tejun Heo
2012-02-22  1:46 ` [PATCH 26/36] blkcg: let blkcg core manage per-queue blkg list and counter Tejun Heo
2012-02-22  1:46 ` [PATCH 27/36] blkcg: unify blkg's for blkcg policies Tejun Heo
2012-03-05 21:01   ` [PATCH UPDATED " Tejun Heo
2012-02-22  1:46 ` [PATCH 28/36] blkcg: use double locking instead of RCU for blkg synchronization Tejun Heo
2012-02-22  1:46 ` [PATCH 29/36] blkcg: drop unnecessary RCU locking Tejun Heo
2012-02-23 18:51   ` [PATCH UPDATED " Tejun Heo
2012-02-22  1:46 ` [PATCH 30/36] block: restructure get_request() Tejun Heo
2012-02-22  1:46 ` [PATCH 31/36] block: interface update for ioc/icq creation functions Tejun Heo
2012-02-22  1:46 ` [PATCH 32/36] block: ioc_task_link() can't fail Tejun Heo
2012-02-22  1:47 ` [PATCH 33/36] block: add io_context->active_ref Tejun Heo
2012-02-22 18:47   ` Vivek Goyal
2012-02-22 19:13     ` Tejun Heo
2012-02-23 18:20       ` Vivek Goyal
2012-02-22  1:47 ` [PATCH 34/36] block: implement bio_associate_current() Tejun Heo
2012-02-22 13:45   ` Jeff Moyer
2012-02-22 19:07     ` Tejun Heo
2012-02-22 19:33       ` Jeff Moyer
2012-02-22 19:37         ` Vivek Goyal
2012-02-22 19:41           ` Jeff Moyer
2012-02-22  1:47 ` [PATCH 35/36] block: make block cgroup policies follow bio task association Tejun Heo
2012-02-22  1:47 ` [PATCH 36/36] block: make blk-throttle preserve the issuing task on delayed bios Tejun Heo
2012-02-22 19:34 ` Vivek Goyal [this message]
2012-02-22 22:04   ` [PATCHSET] blkcg: accumulated blkcg updates Tejun Heo
2012-03-05 20:59 ` [PATCH 17.5] blkcg: skip blkg printing if q isn't associated with disk Tejun Heo
2012-03-05 21:07 ` [PATCHSET] blkcg: accumulated blkcg updates Tejun Heo
2012-03-05 21:08   ` Tejun Heo
2012-03-06 15:07     ` Vivek Goyal
2012-03-06 16:24       ` Vivek Goyal
2012-03-06 18:39         ` Vivek Goyal
2012-03-06 19:02           ` Vivek Goyal
2012-03-08  0:06             ` Tejun Heo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120222193429.GA7635@redhat.com \
    --to=vgoyal@redhat.com \
    --cc=axboe@kernel.dk \
    --cc=ctalbott@google.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rni@google.com \
    --cc=tj@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome