@cryptotaxi247 / netdata-1 / commits / 2c71b6e0e

re-organized mountinfo parsing for cgroups to prevent selecting lxcfs; fixes #714

Costa Tsaousis committed Jul 20, 2016 at 23:43 UTC 2c71b6e0e47fd5438f2eaa94c687a2c260a61586
1 file changed +8 -8
src/sys_fs_cgroup.c
+8 -8
@@ -48,8 +48,8 @@ void read_cgroup_plugin_configuration() {
48 char filename[FILENAME_MAX + 1], *s;
49 struct mountinfo *mi, *root = mountinfo_read();
50
51 - mi = mountinfo_find_by_filesystem_mount_source(root, "cgroup", "cpuacct");
52 - if(!mi) mi = mountinfo_find_by_filesystem_super_option(root, "cgroup", "cpuacct");
51 + mi = mountinfo_find_by_filesystem_super_option(root, "cgroup", "cpuacct");
52 + if(!mi) mi = mountinfo_find_by_filesystem_mount_source(root, "cgroup", "cpuacct");
53 if(!mi) {
54 error("Cannot find cgroup cpuacct mountinfo. Assuming default: /sys/fs/cgroup/cpuacct");
55 s = "/sys/fs/cgroup/cpuacct";
@@ -58,8 +58,8 @@ void read_cgroup_plugin_configuration() {
58 snprintfz(filename, FILENAME_MAX, "%s%s", global_host_prefix, s);
59 cgroup_cpuacct_base = config_get("plugin:cgroups", "path to /sys/fs/cgroup/cpuacct", filename);
60
61 - mi = mountinfo_find_by_filesystem_mount_source(root, "cgroup", "blkio");
62 - if(!mi) mi = mountinfo_find_by_filesystem_super_option(root, "cgroup", "blkio");
61 + mi = mountinfo_find_by_filesystem_super_option(root, "cgroup", "blkio");
62 + if(!mi) mi = mountinfo_find_by_filesystem_mount_source(root, "cgroup", "blkio");
63 if(!mi) {
64 error("Cannot find cgroup blkio mountinfo. Assuming default: /sys/fs/cgroup/blkio");
65 s = "/sys/fs/cgroup/blkio";
@@ -68,8 +68,8 @@ void read_cgroup_plugin_configuration() {
68 snprintfz(filename, FILENAME_MAX, "%s%s", global_host_prefix, s);
69 cgroup_blkio_base = config_get("plugin:cgroups", "path to /sys/fs/cgroup/blkio", filename);
70
71 - mi = mountinfo_find_by_filesystem_mount_source(root, "cgroup", "memory");
72 - if(!mi) mi = mountinfo_find_by_filesystem_super_option(root, "cgroup", "memory");
71 + mi = mountinfo_find_by_filesystem_super_option(root, "cgroup", "memory");
72 + if(!mi) mi = mountinfo_find_by_filesystem_mount_source(root, "cgroup", "memory");
73 if(!mi) {
74 error("Cannot find cgroup memory mountinfo. Assuming default: /sys/fs/cgroup/memory");
75 s = "/sys/fs/cgroup/memory";
@@ -78,8 +78,8 @@ void read_cgroup_plugin_configuration() {
78 snprintfz(filename, FILENAME_MAX, "%s%s", global_host_prefix, s);
79 cgroup_memory_base = config_get("plugin:cgroups", "path to /sys/fs/cgroup/memory", filename);
80
81 - mi = mountinfo_find_by_filesystem_mount_source(root, "cgroup", "devices");
82 - if(!mi) mi = mountinfo_find_by_filesystem_super_option(root, "cgroup", "devices");
81 + mi = mountinfo_find_by_filesystem_super_option(root, "cgroup", "devices");
82 + if(!mi) mi = mountinfo_find_by_filesystem_mount_source(root, "cgroup", "devices");
83 if(!mi) {
84 error("Cannot find cgroup devices mountinfo. Assuming default: /sys/fs/cgroup/devices");
85 s = "/sys/fs/cgroup/devices";