@cryptotaxi247 / netdata-1 / commits / 8a5e854cf

Address reported socket issue (#16083)

thiagoftsm committed Oct 2, 2023 at 13:17 UTC 8a5e854cf37025597eeebe17f3f15f747944c2f3
1 file changed +22 -22
collectors/ebpf.plugin/ebpf.c
+22 -22
@@ -55,7 +55,7 @@ ebpf_module_t ebpf_modules[] = {
55 .functions = {.start_routine = ebpf_process_thread,
56 .apps_routine = ebpf_process_create_apps_charts,
57 .fnct_routine = NULL},
58 - .enabled = 0,
58 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
59 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
60 .apps_level = NETDATA_APPS_LEVEL_REAL_PARENT, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
61 .maps = NULL, .pid_map_size = ND_EBPF_DEFAULT_PID_SIZE, .names = NULL, .cfg = &process_config,
@@ -74,7 +74,7 @@ ebpf_module_t ebpf_modules[] = {
74 .fcnt_desc = EBPF_PLUGIN_SOCKET_FUNCTION_DESCRIPTION,
75 .fcnt_thread_chart_name = NULL,
76 .fcnt_thread_lifetime_name = NULL},
77 - .enabled = 0,
77 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
78 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
79 .apps_level = NETDATA_APPS_LEVEL_REAL_PARENT, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
80 .maps = NULL,
@@ -87,7 +87,7 @@ ebpf_module_t ebpf_modules[] = {
87 .functions = {.start_routine = ebpf_cachestat_thread,
88 .apps_routine = ebpf_cachestat_create_apps_charts,
89 .fnct_routine = NULL},
90 - .enabled = 0,
90 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
91 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
92 .apps_level = NETDATA_APPS_LEVEL_REAL_PARENT, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
93 .maps = cachestat_maps, .pid_map_size = ND_EBPF_DEFAULT_PID_SIZE, .names = NULL, .cfg = &cachestat_config,
@@ -102,7 +102,7 @@ ebpf_module_t ebpf_modules[] = {
102 .functions = {.start_routine = ebpf_sync_thread,
103 .apps_routine = NULL,
104 .fnct_routine = NULL},
105 - .enabled = 0, .maps = NULL,
105 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING, .maps = NULL,
106 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
107 .apps_level = NETDATA_APPS_NOT_SET, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
108 .pid_map_size = ND_EBPF_DEFAULT_PID_SIZE, .names = NULL, .cfg = &sync_config,
@@ -117,7 +117,7 @@ ebpf_module_t ebpf_modules[] = {
117 .functions = {.start_routine = ebpf_dcstat_thread,
118 .apps_routine = ebpf_dcstat_create_apps_charts,
119 .fnct_routine = NULL},
120 - .enabled = 0,
120 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
121 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
122 .apps_level = NETDATA_APPS_LEVEL_REAL_PARENT, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
123 .maps = dcstat_maps,
@@ -130,7 +130,7 @@ ebpf_module_t ebpf_modules[] = {
130 .functions = {.start_routine = ebpf_swap_thread,
131 .apps_routine = ebpf_swap_create_apps_charts,
132 .fnct_routine = NULL},
133 - .enabled = 0,
133 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
134 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
135 .apps_level = NETDATA_APPS_LEVEL_REAL_PARENT, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
136 .maps = NULL,
@@ -145,7 +145,7 @@ ebpf_module_t ebpf_modules[] = {
145 .functions = {.start_routine = ebpf_vfs_thread,
146 .apps_routine = ebpf_vfs_create_apps_charts,
147 .fnct_routine = NULL},
148 - .enabled = 0,
148 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
149 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
150 .apps_level = NETDATA_APPS_LEVEL_REAL_PARENT, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
151 .maps = NULL,
@@ -158,7 +158,7 @@ ebpf_module_t ebpf_modules[] = {
158 .functions = {.start_routine = ebpf_filesystem_thread,
159 .apps_routine = NULL,
160 .fnct_routine = NULL},
161 - .enabled = 0,
161 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
162 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
163 .apps_level = NETDATA_APPS_NOT_SET, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
164 .maps = NULL, .pid_map_size = ND_EBPF_DEFAULT_PID_SIZE, .names = NULL, .cfg = &fs_config,
@@ -172,7 +172,7 @@ ebpf_module_t ebpf_modules[] = {
172 .functions = {.start_routine = ebpf_disk_thread,
173 .apps_routine = NULL,
174 .fnct_routine = NULL},
175 - .enabled = 0,
175 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
176 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
177 .apps_level = NETDATA_APPS_NOT_SET, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
178 .maps = NULL, .pid_map_size = ND_EBPF_DEFAULT_PID_SIZE, .names = NULL, .cfg = &disk_config,
@@ -186,7 +186,7 @@ ebpf_module_t ebpf_modules[] = {
186 .functions = {.start_routine = ebpf_mount_thread,
187 .apps_routine = NULL,
188 .fnct_routine = NULL},
189 - .enabled = 0,
189 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
190 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
191 .apps_level = NETDATA_APPS_NOT_SET, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
192 .maps = NULL, .pid_map_size = ND_EBPF_DEFAULT_PID_SIZE, .names = NULL, .cfg = &mount_config,
@@ -200,7 +200,7 @@ ebpf_module_t ebpf_modules[] = {
200 .functions = {.start_routine = ebpf_fd_thread,
201 .apps_routine = ebpf_fd_create_apps_charts,
202 .fnct_routine = NULL},
203 - .enabled = 0,
203 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
204 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
205 .apps_level = NETDATA_APPS_LEVEL_REAL_PARENT, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
206 .maps = NULL,
@@ -216,7 +216,7 @@ ebpf_module_t ebpf_modules[] = {
216 .functions = {.start_routine = ebpf_hardirq_thread,
217 .apps_routine = NULL,
218 .fnct_routine = NULL},
219 - .enabled = 0,
219 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
220 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
221 .apps_level = NETDATA_APPS_NOT_SET, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
222 .maps = NULL, .pid_map_size = ND_EBPF_DEFAULT_PID_SIZE, .names = NULL, .cfg = &hardirq_config,
@@ -230,7 +230,7 @@ ebpf_module_t ebpf_modules[] = {
230 .functions = {.start_routine = ebpf_softirq_thread,
231 .apps_routine = NULL,
232 .fnct_routine = NULL },
233 - .enabled = 0,
233 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
234 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
235 .apps_level = NETDATA_APPS_NOT_SET, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
236 .maps = NULL, .pid_map_size = ND_EBPF_DEFAULT_PID_SIZE, .names = NULL, .cfg = &softirq_config,
@@ -243,7 +243,7 @@ ebpf_module_t ebpf_modules[] = {
243 .thread_description = NETDATA_EBPF_OOMKILL_MODULE_DESC},
244 .functions = {.start_routine = ebpf_oomkill_thread,
245 .apps_routine = ebpf_oomkill_create_apps_charts,
246 - .fnct_routine = NULL},.enabled = 0,
246 + .fnct_routine = NULL},.enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
247 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
248 .apps_level = NETDATA_APPS_LEVEL_REAL_PARENT, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
249 .maps = NULL,
@@ -258,7 +258,7 @@ ebpf_module_t ebpf_modules[] = {
258 .functions = {.start_routine = ebpf_shm_thread,
259 .apps_routine = ebpf_shm_create_apps_charts,
260 .fnct_routine = NULL},
261 - .enabled = 0,
261 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
262 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
263 .apps_level = NETDATA_APPS_LEVEL_REAL_PARENT, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
264 .maps = NULL,
@@ -273,7 +273,7 @@ ebpf_module_t ebpf_modules[] = {
273 .functions = {.start_routine = ebpf_mdflush_thread,
274 .apps_routine = NULL,
275 .fnct_routine = NULL},
276 - .enabled = 0,
276 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING,
277 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
278 .apps_level = NETDATA_APPS_NOT_SET, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
279 .maps = NULL, .pid_map_size = ND_EBPF_DEFAULT_PID_SIZE, .names = NULL, .cfg = &mdflush_config,
@@ -287,7 +287,7 @@ ebpf_module_t ebpf_modules[] = {
287 .functions = {.start_routine = ebpf_function_thread,
288 .apps_routine = NULL,
289 .fnct_routine = NULL},
290 - .enabled = 1,
290 + .enabled = NETDATA_THREAD_EBPF_RUNNING,
291 .update_every = EBPF_DEFAULT_UPDATE_EVERY, .global_charts = 1, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO,
292 .apps_level = NETDATA_APPS_NOT_SET, .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0,
293 .maps = NULL, .pid_map_size = ND_EBPF_DEFAULT_PID_SIZE, .names = NULL, .cfg = NULL,
@@ -297,7 +297,7 @@ ebpf_module_t ebpf_modules[] = {
297 .thread = NULL, .maps_per_core = CONFIG_BOOLEAN_YES, .lifetime = EBPF_DEFAULT_LIFETIME, .running_time = 0},
298 { .info = {.thread_name = NULL, .config_name = NULL},
299 .functions = {.start_routine = NULL, .apps_routine = NULL, .fnct_routine = NULL},
300 - .enabled = 0, .update_every = EBPF_DEFAULT_UPDATE_EVERY,
300 + .enabled = NETDATA_THREAD_EBPF_NOT_RUNNING, .update_every = EBPF_DEFAULT_UPDATE_EVERY,
301 .global_charts = 0, .apps_charts = NETDATA_EBPF_APPS_FLAG_NO, .apps_level = NETDATA_APPS_NOT_SET,
302 .cgroup_charts = CONFIG_BOOLEAN_NO, .mode = MODE_ENTRY, .optional = 0, .maps = NULL,
303 .pid_map_size = 0, .names = NULL, .cfg = NULL, .kernels = 0, .load = EBPF_LOAD_LEGACY,
@@ -2168,7 +2168,7 @@ static inline void ebpf_set_thread_mode(netdata_run_mode_t lmode)
2168 */
2169 static inline void ebpf_enable_specific_chart(struct ebpf_module *em, int disable_cgroup)
2170 {
2171 - em->enabled = CONFIG_BOOLEAN_YES;
2171 + em->enabled = NETDATA_THREAD_EBPF_RUNNING;
2172
2173 // oomkill stores data inside apps submenu, so it always need to have apps_enabled for plugin to create
2174 // its chart, without this comparison eBPF.plugin will try to store invalid data when apps is disabled.
@@ -2192,7 +2192,7 @@ static inline void disable_all_global_charts()
2192 {
2193 int i;
2194 for (i = 0; ebpf_modules[i].info.thread_name; i++) {
2195 - ebpf_modules[i].enabled = 0;
2195 + ebpf_modules[i].enabled = NETDATA_THREAD_EBPF_NOT_RUNNING;
2196 ebpf_modules[i].global_charts = 0;
2197 }
2198 }
@@ -4123,13 +4123,13 @@ int main(int argc, char **argv)
4123 ebpf_module_t *em = &ebpf_modules[i];
4124 em->thread = st;
4125 em->thread_id = i;
4126 - if (em->enabled) {
4126 + if (em->enabled != NETDATA_THREAD_EBPF_NOT_RUNNING) {
4127 st->thread = mallocz(sizeof(netdata_thread_t));
4128 em->enabled = NETDATA_THREAD_EBPF_RUNNING;
4129 em->lifetime = EBPF_NON_FUNCTION_LIFE_TIME;
4130 netdata_thread_create(st->thread, st->name, NETDATA_THREAD_OPTION_DEFAULT, st->start_routine, em);
4131 } else {
4132 - em->enabled = NETDATA_THREAD_EBPF_NOT_RUNNING;
4132 + em->lifetime = EBPF_DEFAULT_LIFETIME;
4133 }
4134 }
4135