Unverified Commit 65bd617b authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!4537 mainline cgroup bufix

Merge Pull Request from: @ci-robot 
 
PR sync from: Chen Ridong <chenridong@huawei.com>
https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/NBMTOQ7LDMPYR6WUJETXZXJGTCAHHZ33/ 
Kamalesh Babulal (2):
  cgroup: Check for ret during cgroup1_base_files cft addition
  cgroup: use legacy_name for cgroup v1 disable info

Ming Lei (1):
  blk-cgroup: bypass blkcg_deactivate_policy after destroying


-- 
2.34.1
 
https://gitee.com/openeuler/kernel/issues/I91BXW 
 
Link:https://gitee.com/openeuler/kernel/pulls/4537

 

Reviewed-by: default avatarzhangyi (F) <yi.zhang@huawei.com>
Reviewed-by: default avatarZheng Zengkai <zhengzengkai@huawei.com>
Signed-off-by: default avatarZheng Zengkai <zhengzengkai@huawei.com>
parents 6bec8f8b b5ff1575
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -577,6 +577,7 @@ static void blkg_destroy_all(struct gendisk *disk)
	struct request_queue *q = disk->queue;
	struct blkcg_gq *blkg, *n;
	int count = BLKG_DESTROY_BATCH_SIZE;
	int i;

restart:
	spin_lock_irq(&q->queue_lock);
@@ -602,6 +603,18 @@ static void blkg_destroy_all(struct gendisk *disk)
		}
	}

	/*
	 * Mark policy deactivated since policy offline has been done, and
	 * the free is scheduled, so future blkcg_deactivate_policy() can
	 * be bypassed
	 */
	for (i = 0; i < BLKCG_MAX_POLS; i++) {
		struct blkcg_policy *pol = blkcg_policy[i];

		if (pol)
			__clear_bit(pol->plid, q->blkcg_pols);
	}

	q->root_blkg = NULL;
	spin_unlock_irq(&q->queue_lock);
}
+5 −3
Original line number Diff line number Diff line
@@ -1733,8 +1733,10 @@ static int css_populate_dir(struct cgroup_subsys_state *css)
					return ret;
			}
		} else {
			cgroup_addrm_files(css, cgrp,
			ret = cgroup_addrm_files(css, cgrp,
						 cgroup1_base_files, true);
			if (ret < 0)
				return ret;
		}
	} else {
		list_for_each_entry(cfts, &css->ss->cfts, node) {
@@ -6214,7 +6216,7 @@ int __init cgroup_init(void)

		if (cgroup1_ssid_disabled(ssid))
			pr_info("Disabling %s control group subsystem in v1 mounts\n",
				ss->name);
				ss->legacy_name);

		cgrp_dfl_root.subsys_mask |= 1 << ss->id;