uprobe_perf_func / uretprobe_perf_func uprobe_dispatcher / uretprobe_dispatcher handler_chain / handle_uretprobe_chain I'm not sure why the paths of uprobe and uretprobe are entirely different. I suspect that uretprobe might have been implemented later than uprobe and was only partially implemented. Oleg, do you have more insights on this? In your opinion, does uretprobe need UPROBE_HANDLER_REMOVE? If so, is it a good idea to merge the paths of uprobe and uretprobe? Regardless, if we only need a temporary and incomplete fix, I will modify only the commit message according to Oleg's suggestions and resend it. I'm aware that using `uprobe_perf_filter` in `uretprobe_perf_func` is not the solution for BPF filtering. I'm just trying to alleviate the issue in some simple cases. Sorry for the late reply as I spent a long time looking at the details discussed above. Thanks,