This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug uprobes/5083] New: rmmod uprobes should be safer
- From: "jkenisto at us dot ibm dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sources dot redhat dot com
- Date: 1 Oct 2007 19:31:06 -0000
- Subject: [Bug uprobes/5083] New: rmmod uprobes should be safer
- Reply-to: sourceware-bugzilla at sourceware dot org
When uprobes is a module, it's possible to rmmod it unsafely. This can happen when
1) a client module has neglected to unregister all its probes; or
2) a uprobe_process object is hanging around, waiting for uretprobed functions
to return.
It either case, we can defeat the unsafe rmmod by tying the uprobes module's ref
count to the number of surviving uprobe_processes. It's safe to rmmod uprobes
iff the number of uprobe_processes is zero.
We should handle "rmmod --wait" gracefully. We need to be sure to avoid doing
stuff like uprobe_run_defregs() when the module is shutting down (check
module_is_live()?) due to us running uprobe_put_process(). Can
uprobes_report_signal() or uprobes_report_exit() get preempted after calling
module_put (indirectly, via uprobe_put_process()) but before they return?
--
Summary: rmmod uprobes should be safer
Product: systemtap
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: uprobes
AssignedTo: systemtap at sources dot redhat dot com
ReportedBy: jkenisto at us dot ibm dot com
http://sourceware.org/bugzilla/show_bug.cgi?id=5083
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.