lkml.org 
[lkml]   [2012]   [Mar]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 10/21] blkcg: implement blkio_policy_type->cftypes
    Date
    Add blkiop->cftypes which is added and removed together with the
    policy. This will be used to move conf/stat handling to the policies.

    Signed-off-by: Tejun Heo <tj@kernel.org>
    ---
    block/blk-cgroup.c | 6 ++++++
    block/blk-cgroup.h | 1 +
    2 files changed, 7 insertions(+), 0 deletions(-)

    diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c
    index df1e197..2f05056 100644
    --- a/block/blk-cgroup.c
    +++ b/block/blk-cgroup.c
    @@ -1538,6 +1538,9 @@ void blkio_policy_register(struct blkio_policy_type *blkiop)
    list_for_each_entry(q, &all_q_list, all_q_node)
    update_root_blkg_pd(q, blkiop->plid);
    blkcg_bypass_end();
    +
    + if (blkiop->cftypes)
    + WARN_ON(cgroup_add_cftypes(&blkio_subsys, blkiop->cftypes));
    }
    EXPORT_SYMBOL_GPL(blkio_policy_register);

    @@ -1545,6 +1548,9 @@ void blkio_policy_unregister(struct blkio_policy_type *blkiop)
    {
    struct request_queue *q;

    + if (blkiop->cftypes)
    + cgroup_rm_cftypes(&blkio_subsys, blkiop->cftypes);
    +
    blkcg_bypass_start();
    spin_lock(&blkio_list_lock);

    diff --git a/block/blk-cgroup.h b/block/blk-cgroup.h
    index 361ecfa..fa744d5 100644
    --- a/block/blk-cgroup.h
    +++ b/block/blk-cgroup.h
    @@ -181,6 +181,7 @@ struct blkio_policy_type {
    struct blkio_policy_ops ops;
    enum blkio_policy_id plid;
    size_t pdata_size; /* policy specific private data size */
    + struct cftype *cftypes; /* cgroup files for the policy */
    };

    extern int blkcg_init_queue(struct request_queue *q);
    --
    1.7.7.3


    \
     
     \ /
      Last update: 2012-03-29 00:55    [W:2.446 / U:1.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site