Lines Matching refs:uprobes

3082 	struct bpf_uprobe *uprobes;  member
3092 static void bpf_uprobe_unregister(struct bpf_uprobe *uprobes, u32 cnt) in bpf_uprobe_unregister() argument
3097 uprobe_unregister_nosync(uprobes[i].uprobe, &uprobes[i].consumer); in bpf_uprobe_unregister()
3108 bpf_uprobe_unregister(umulti_link->uprobes, umulti_link->cnt); in bpf_uprobe_multi_link_release()
3119 kvfree(umulti_link->uprobes); in bpf_uprobe_multi_link_dealloc()
3177 put_user(umulti_link->uprobes[i].offset, uoffsets + i)) in bpf_uprobe_multi_link_fill_link_info()
3180 put_user(umulti_link->uprobes[i].ref_ctr_offset, uref_ctr_offsets + i)) in bpf_uprobe_multi_link_fill_link_info()
3183 put_user(umulti_link->uprobes[i].cookie, ucookies + i)) in bpf_uprobe_multi_link_fill_link_info()
3281 struct bpf_uprobe *uprobes = NULL; in bpf_uprobe_multi_link_attach() local
3347 uprobes = kvcalloc(cnt, sizeof(*uprobes), GFP_KERNEL); in bpf_uprobe_multi_link_attach()
3349 if (!uprobes || !link) in bpf_uprobe_multi_link_attach()
3353 if (__get_user(uprobes[i].offset, uoffsets + i)) { in bpf_uprobe_multi_link_attach()
3357 if (uprobes[i].offset < 0) { in bpf_uprobe_multi_link_attach()
3361 if (uref_ctr_offsets && __get_user(uprobes[i].ref_ctr_offset, uref_ctr_offsets + i)) { in bpf_uprobe_multi_link_attach()
3365 if (ucookies && __get_user(uprobes[i].cookie, ucookies + i)) { in bpf_uprobe_multi_link_attach()
3370 uprobes[i].link = link; in bpf_uprobe_multi_link_attach()
3373 uprobes[i].consumer.ret_handler = uprobe_multi_link_ret_handler; in bpf_uprobe_multi_link_attach()
3375 uprobes[i].consumer.handler = uprobe_multi_link_handler; in bpf_uprobe_multi_link_attach()
3378 uprobes[i].consumer.filter = uprobe_multi_link_filter; in bpf_uprobe_multi_link_attach()
3382 link->uprobes = uprobes; in bpf_uprobe_multi_link_attach()
3391 uprobes[i].uprobe = uprobe_register(d_real_inode(link->path.dentry), in bpf_uprobe_multi_link_attach()
3392 uprobes[i].offset, in bpf_uprobe_multi_link_attach()
3393 uprobes[i].ref_ctr_offset, in bpf_uprobe_multi_link_attach()
3394 &uprobes[i].consumer); in bpf_uprobe_multi_link_attach()
3395 if (IS_ERR(uprobes[i].uprobe)) { in bpf_uprobe_multi_link_attach()
3396 err = PTR_ERR(uprobes[i].uprobe); in bpf_uprobe_multi_link_attach()
3409 bpf_uprobe_unregister(uprobes, link->cnt); in bpf_uprobe_multi_link_attach()
3412 kvfree(uprobes); in bpf_uprobe_multi_link_attach()