diff --git a/src/vfs.bpf.c b/src/vfs.bpf.c index ee8f2b1..d004fcc 100644 --- a/src/vfs.bpf.c +++ b/src/vfs.bpf.c @@ -370,23 +370,6 @@ static __always_inline int netdata_common_vfs_create(int ret) return 0; } -static __always_inline int netdata_release_task_vfs() -{ - struct netdata_vfs_stat_t *removeme; - __u32 key = 0; - if (netdata_vfs_not_update_apps()) - return 0; - - removeme = netdata_get_pid_structure(&key, &vfs_ctrl, &tbl_vfs_pid); - if (removeme) { - bpf_map_delete_elem(&tbl_vfs_pid, &key); - - libnetdata_update_global(&vfs_ctrl, NETDATA_CONTROLLER_PID_TABLE_DEL, 1); - } - - return 0; -} - /************************************************************************************ * * VFS Section (kprobe) @@ -529,12 +512,6 @@ int BPF_KRETPROBE(netdata_vfs_create_kretprobe) return netdata_common_vfs_create(ret); } -SEC("kprobe/release_task") -int BPF_KRETPROBE(netdata_vfs_release_task_kprobe) -{ - return netdata_release_task_vfs(); -} - /************************************************************************************ * * VFS Section (trampoline) @@ -683,11 +660,5 @@ int BPF_PROG(netdata_vfs_create_fexit, struct inode *dir, struct dentry *dentry, } */ -SEC("fentry/release_task") -int BPF_PROG(netdata_vfs_release_task_fentry) -{ - return netdata_release_task_vfs(); -} - char _license[] SEC("license") = "GPL"; diff --git a/src/vfs.c b/src/vfs.c index d8edf60..f09f167 100644 --- a/src/vfs.c +++ b/src/vfs.c @@ -22,8 +22,7 @@ char *function_list[] = { "vfs_write", "vfs_unlink", "vfs_fsync", "vfs_open", - "vfs_create", - "release_task" + "vfs_create" }; // This preprocessor is defined here, because it is not useful in kernel-colector #define NETDATA_VFS_RELEASE_TASK 8 @@ -46,7 +45,6 @@ static inline void ebpf_disable_probes(struct vfs_bpf *obj) bpf_program__set_autoload(obj->progs.netdata_vfs_open_kretprobe, false); bpf_program__set_autoload(obj->progs.netdata_vfs_create_kprobe, false); bpf_program__set_autoload(obj->progs.netdata_vfs_create_kretprobe, false); - bpf_program__set_autoload(obj->progs.netdata_vfs_release_task_kprobe, false); } static inline void ebpf_disable_trampoline(struct vfs_bpf *obj) @@ -66,7 +64,6 @@ static inline void ebpf_disable_trampoline(struct vfs_bpf *obj) bpf_program__set_autoload(obj->progs.netdata_vfs_open_fentry, false); bpf_program__set_autoload(obj->progs.netdata_vfs_open_fexit, false); bpf_program__set_autoload(obj->progs.netdata_vfs_create_fentry, false); - bpf_program__set_autoload(obj->progs.netdata_vfs_release_task_fentry, false); // bpf_program__set_autoload(obj->progs.netdata_vfs_create_fexit, false); } @@ -117,9 +114,6 @@ static void ebpf_set_trampoline_target(struct vfs_bpf *obj) bpf_program__set_attach_target(obj->progs.netdata_vfs_create_fentry, 0, function_list[NETDATA_VFS_CREATE]); - bpf_program__set_attach_target(obj->progs.netdata_vfs_release_task_fentry, 0, - function_list[NETDATA_VFS_RELEASE_TASK]); - // bpf_program__set_attach_target(obj->progs.netdata_vfs_create_fexit, 0, // function_list[NETDATA_VFS_CREATE]); } @@ -230,11 +224,6 @@ static int ebpf_attach_probes(struct vfs_bpf *obj) if (ret) return -1; - obj->links.netdata_vfs_release_task_kprobe = bpf_program__attach_kprobe(obj->progs.netdata_vfs_release_task_kprobe, - true, function_list[NETDATA_VFS_RELEASE_TASK]); - ret = libbpf_get_error(obj->links.netdata_vfs_release_task_kprobe); - if (ret) - return -1; return 0; }