Skip to content

Commit 70408be

Browse files
oleg-nesterovPeter Zijlstra
authored andcommitted
uprobes: fold __uprobe_unregister() into uprobe_unregister()
Fold __uprobe_unregister() into its single caller, uprobe_unregister(). A separate patch to simplify the next change. Signed-off-by: Oleg Nesterov <oleg@redhat.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Jiri Olsa <jolsa@kernel.org> Acked-by: Andrii Nakryiko <andrii@kernel.org> Acked-by: "Masami Hiramatsu (Google)" <mhiramat@kernel.org> Link: https://lore.kernel.org/r/20240801132744.GA8814@redhat.com
1 parent bb18c5d commit 70408be

1 file changed

Lines changed: 10 additions & 15 deletions

File tree

kernel/events/uprobes.c

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1085,30 +1085,25 @@ register_for_each_vma(struct uprobe *uprobe, struct uprobe_consumer *new)
10851085
return err;
10861086
}
10871087

1088-
static void
1089-
__uprobe_unregister(struct uprobe *uprobe, struct uprobe_consumer *uc)
1090-
{
1091-
int err;
1092-
1093-
if (WARN_ON(!consumer_del(uprobe, uc)))
1094-
return;
1095-
1096-
err = register_for_each_vma(uprobe, NULL);
1097-
/* TODO : cant unregister? schedule a worker thread */
1098-
if (!uprobe->consumers && !err)
1099-
delete_uprobe(uprobe);
1100-
}
1101-
11021088
/**
11031089
* uprobe_unregister - unregister an already registered probe.
11041090
* @uprobe: uprobe to remove
11051091
* @uc: identify which probe if multiple probes are colocated.
11061092
*/
11071093
void uprobe_unregister(struct uprobe *uprobe, struct uprobe_consumer *uc)
11081094
{
1095+
int err;
1096+
11091097
get_uprobe(uprobe);
11101098
down_write(&uprobe->register_rwsem);
1111-
__uprobe_unregister(uprobe, uc);
1099+
if (WARN_ON(!consumer_del(uprobe, uc)))
1100+
err = -ENOENT;
1101+
else
1102+
err = register_for_each_vma(uprobe, NULL);
1103+
1104+
/* TODO : cant unregister? schedule a worker thread */
1105+
if (!err && !uprobe->consumers)
1106+
delete_uprobe(uprobe);
11121107
up_write(&uprobe->register_rwsem);
11131108
put_uprobe(uprobe);
11141109
}

0 commit comments

Comments
 (0)