cgroup_populate_dir() currently clears all files and then repopulate the directory; however, the clearing part is only useful when it's called from cgroup_remount(). Relocate the invocation to cgroup_remount(). This is to prepare for further cgroup file handling updates.
Showing the changes to kernel (1 of 1 file). Show all
Unified · Split
| @@ -1313,7 +1313,8 @@ static int cgroup_remount(struct super_block *sb, int *flags, char *data) · 1312 unmodified lines | |||
| 1313 | goto out_unlock; | 1313 | goto out_unlock; |
| 1314 | } | 1314 | } |
| 1315 | 1315 | ||
| 1316 | /* (re)populate subsystem files */ | 1316 | /* clear out any existing files and repopulate subsystem files */ |
| 1317 | cgroup_clear_directory(cgrp->dentry); | ||
| 1317 | cgroup_populate_dir(cgrp); | 1318 | cgroup_populate_dir(cgrp); |
| 1318 | 1319 | ||
| 1319 | if (opts.release_agent) | 1320 | if (opts.release_agent) |
| @@ -3644,9 +3645,6 @@ static int cgroup_populate_dir(struct cgroup *cgrp) · 2324 unmodified lines | |||
| 3644 | int err; | 3645 | int err; |
| 3645 | struct cgroup_subsys *ss; | 3646 | struct cgroup_subsys *ss; |
| 3646 | 3647 | ||
| 3647 | /* First clear out any existing files */ | ||
| 3648 | cgroup_clear_directory(cgrp->dentry); | ||
| 3649 | |||
| 3650 | err = cgroup_add_files(cgrp, NULL, files, ARRAY_SIZE(files)); | 3648 | err = cgroup_add_files(cgrp, NULL, files, ARRAY_SIZE(files)); |
| 3651 | if (err < 0) | 3649 | if (err < 0) |
| 3652 | return err; | 3650 | return err; |