|
@@ -948,6 +948,11 @@ cfq_find_alloc_cfqg(struct cfq_data *cfqd, struct cgroup *cgroup, int create)
|
|
|
unsigned int major, minor;
|
|
|
|
|
|
cfqg = cfqg_of_blkg(blkiocg_lookup_group(blkcg, key));
|
|
|
+ if (cfqg && !cfqg->blkg.dev && bdi->dev && dev_name(bdi->dev)) {
|
|
|
+ sscanf(dev_name(bdi->dev), "%u:%u", &major, &minor);
|
|
|
+ cfqg->blkg.dev = MKDEV(major, minor);
|
|
|
+ goto done;
|
|
|
+ }
|
|
|
if (cfqg || !create)
|
|
|
goto done;
|
|
|
|