For systemtap scripts that include hundreds of probes, it would be advantageous to pull in this new -mm patch for RHEL5.3. It shortens the time for script shutdown from 1/HZ * number-of-probes to a much smaller constant, by avoiding repeated sched_sync operations in the middle. In the current -mm tree, it's called the "kprobes-add-unregister_kprobes-for-batch-registration.patch". I don't have git commit# for it yet.
Linus tree commits: 26b31c1908e02a316edfba08080373342e662c14 4a296e07c3a410c09b9155da4c2fa84a07964f38 9861668f747895608cea425f8457989d8dd2edf2
Here is a bug fix commit for this feature. 67dddaad5d8b8c5ee5b96a7e2f6cb0faad703865
It is definitely noticeable, and a script with hundreds of probes is not that unusual. "probe syscall.* {}" involves several hundred; "probe kernel.function("*wacky*wildcard*").call {} can involve thousands.
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux maintenance release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux Update release for currently deployed products. This request is not yet committed for inclusion in an Update release.
in kernel-2.6.18-107.el5 You can download this test kernel from http://people.redhat.com/dzickus/el5
This bug (feature request) has been marked for inclusion in the Red Hat Enterprise Linux 5.3 Release Notes. To aid in the development of relevant and accurate release notes, please fill out the "Release Notes" field above with the following 4 pieces of information: Cause: What actions or circumstances induced the feature request. Consequence: What action was inhibited by the feature's absence. Fix: What was done to implement the feature. Result: now happens when the actions or circumstances above occur. (NB: this is not the same as 'the feature request was fulfilled')
Release note added. If any revisions are required, please set the "requires_release_notes" flag to "?" and edit the "Release Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. New Contents: This kernel API extension enables a significantly faster shutdown of systemtap scripts that use many kernel probes, by elimination of unnecessary synchronization between individual probe removal operations.
Release note updated. If any revisions are required, please set the "requires_release_notes" flag to "?" and edit the "Release Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. Diffed Contents: @@ -1 +1 @@ -This kernel API extension enables a significantly faster shutdown of systemtap scripts that use many kernel probes, by elimination of unnecessary synchronization between individual probe removal operations.+This kernel update includes a kernel API extension that significantly improves shutdown of SystemTap scripts. This added kernel API extension eliminates unnecessary synchronization between individual probe removal operations. As a result, SystemTap can now process .stp scripts that have hundreds of kernel probes much faster. This is especially useful for administrators that use scripts with probes containing wildcards that capture numerous kernel events, such as probe syscall.* {}.
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2009-0225.html