|
@@ -47,8 +47,6 @@ static struct cgroup_subsys_state *blkiocg_create(struct cgroup_subsys *,
|
|
struct cgroup *);
|
|
struct cgroup *);
|
|
static int blkiocg_can_attach(struct cgroup_subsys *, struct cgroup *,
|
|
static int blkiocg_can_attach(struct cgroup_subsys *, struct cgroup *,
|
|
struct cgroup_taskset *);
|
|
struct cgroup_taskset *);
|
|
-static void blkiocg_attach(struct cgroup_subsys *, struct cgroup *,
|
|
|
|
- struct cgroup_taskset *);
|
|
|
|
static int blkiocg_pre_destroy(struct cgroup_subsys *, struct cgroup *);
|
|
static int blkiocg_pre_destroy(struct cgroup_subsys *, struct cgroup *);
|
|
static void blkiocg_destroy(struct cgroup_subsys *, struct cgroup *);
|
|
static void blkiocg_destroy(struct cgroup_subsys *, struct cgroup *);
|
|
static int blkiocg_populate(struct cgroup_subsys *, struct cgroup *);
|
|
static int blkiocg_populate(struct cgroup_subsys *, struct cgroup *);
|
|
@@ -63,7 +61,6 @@ struct cgroup_subsys blkio_subsys = {
|
|
.name = "blkio",
|
|
.name = "blkio",
|
|
.create = blkiocg_create,
|
|
.create = blkiocg_create,
|
|
.can_attach = blkiocg_can_attach,
|
|
.can_attach = blkiocg_can_attach,
|
|
- .attach = blkiocg_attach,
|
|
|
|
.pre_destroy = blkiocg_pre_destroy,
|
|
.pre_destroy = blkiocg_pre_destroy,
|
|
.destroy = blkiocg_destroy,
|
|
.destroy = blkiocg_destroy,
|
|
.populate = blkiocg_populate,
|
|
.populate = blkiocg_populate,
|
|
@@ -1729,22 +1726,6 @@ static int blkiocg_can_attach(struct cgroup_subsys *ss, struct cgroup *cgrp,
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
|
|
|
|
-static void blkiocg_attach(struct cgroup_subsys *ss, struct cgroup *cgrp,
|
|
|
|
- struct cgroup_taskset *tset)
|
|
|
|
-{
|
|
|
|
- struct task_struct *task;
|
|
|
|
- struct io_context *ioc;
|
|
|
|
-
|
|
|
|
- cgroup_taskset_for_each(task, cgrp, tset) {
|
|
|
|
- /* we don't lose anything even if ioc allocation fails */
|
|
|
|
- ioc = get_task_io_context(task, GFP_ATOMIC, NUMA_NO_NODE);
|
|
|
|
- if (ioc) {
|
|
|
|
- ioc_cgroup_changed(ioc);
|
|
|
|
- put_io_context(ioc);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
static void blkcg_bypass_start(void)
|
|
static void blkcg_bypass_start(void)
|
|
__acquires(&all_q_mutex)
|
|
__acquires(&all_q_mutex)
|
|
{
|
|
{
|