Loading kernel/cgroup/debug.c +21 −25 Original line number Diff line number Diff line Loading @@ -200,27 +200,16 @@ static int cgroup_subsys_states_read(struct seq_file *seq, void *v) return 0; } static int cgroup_masks_read(struct seq_file *seq, void *v) static void cgroup_masks_read_one(struct seq_file *seq, const char *name, u16 mask) { struct cgroup *cgrp = seq_css(seq)->cgroup; struct cgroup_subsys *ss; int i, j; struct { u16 *mask; char *name; } mask_list[] = { { &cgrp->subtree_control, "subtree_control" }, { &cgrp->subtree_ss_mask, "subtree_ss_mask" }, }; mutex_lock(&cgroup_mutex); for (i = 0; i < ARRAY_SIZE(mask_list); i++) { u16 mask = *mask_list[i].mask; int ssid; bool first = true; seq_printf(seq, "%-17s: ", mask_list[i].name); for_each_subsys(ss, j) { if (!(mask & (1 << ss->id))) seq_printf(seq, "%-17s: ", name); for_each_subsys(ss, ssid) { if (!(mask & (1 << ssid))) continue; if (!first) seq_puts(seq, ", "); Loading @@ -230,6 +219,13 @@ static int cgroup_masks_read(struct seq_file *seq, void *v) seq_putc(seq, '\n'); } static int cgroup_masks_read(struct seq_file *seq, void *v) { struct cgroup *cgrp = seq_css(seq)->cgroup; mutex_lock(&cgroup_mutex); cgroup_masks_read_one(seq, "subtree_control", cgrp->subtree_control); cgroup_masks_read_one(seq, "subtree_ss_mask", cgrp->subtree_ss_mask); mutex_unlock(&cgroup_mutex); return 0; } Loading Loading
kernel/cgroup/debug.c +21 −25 Original line number Diff line number Diff line Loading @@ -200,27 +200,16 @@ static int cgroup_subsys_states_read(struct seq_file *seq, void *v) return 0; } static int cgroup_masks_read(struct seq_file *seq, void *v) static void cgroup_masks_read_one(struct seq_file *seq, const char *name, u16 mask) { struct cgroup *cgrp = seq_css(seq)->cgroup; struct cgroup_subsys *ss; int i, j; struct { u16 *mask; char *name; } mask_list[] = { { &cgrp->subtree_control, "subtree_control" }, { &cgrp->subtree_ss_mask, "subtree_ss_mask" }, }; mutex_lock(&cgroup_mutex); for (i = 0; i < ARRAY_SIZE(mask_list); i++) { u16 mask = *mask_list[i].mask; int ssid; bool first = true; seq_printf(seq, "%-17s: ", mask_list[i].name); for_each_subsys(ss, j) { if (!(mask & (1 << ss->id))) seq_printf(seq, "%-17s: ", name); for_each_subsys(ss, ssid) { if (!(mask & (1 << ssid))) continue; if (!first) seq_puts(seq, ", "); Loading @@ -230,6 +219,13 @@ static int cgroup_masks_read(struct seq_file *seq, void *v) seq_putc(seq, '\n'); } static int cgroup_masks_read(struct seq_file *seq, void *v) { struct cgroup *cgrp = seq_css(seq)->cgroup; mutex_lock(&cgroup_mutex); cgroup_masks_read_one(seq, "subtree_control", cgrp->subtree_control); cgroup_masks_read_one(seq, "subtree_ss_mask", cgrp->subtree_ss_mask); mutex_unlock(&cgroup_mutex); return 0; } Loading