1.148. systemtap
1.148.1. RHEA-2011-0037: systemtap bug fix and enhancement update Copy linkLink copied to clipboard!
Copy linkLink copied to clipboard!
SystemTap is an instrumentation system for systems running the Linux kernel, version 2.6. Developers can write scripts to collect data on the operation of the system.
This update re-bases SystemTap to upstream version 1.3 (BZ#606726). This re-base applies several upstream enhancements, highlights of which include:
- A new integrated compile-server client is now available as part of
stap. - A new option,
--ldd, automatically adds any additional shared libraries needed by probed or "-d"-listed userspace binaries to the-dlist; this enables symbolic backtracing through them. Similarly, the new--all-modulesoption automatically adds any currently loaded kernel modules (listed in/proc/modules) to the-dlist. - By default the
systemtap-runtimeRPM builds now includes a shared library:staplog.so. This library allowscrashto extract systemtap data from avmcoreimage. - This re-base also introduces backward-compatibility flags and a deprecation policy, which is useful in preventing future tapset/language changes from breaking valid scripts.
- The
<sys/sdt.h>user-space markers no longer default to an implicitMARKER_NAME_ENABLED()semaphore check for each marker. To check for enabled markers use a.ddeclaration file, then:if (MARKER_NAME_ENABLED()) MARKER_NAME()
if (MARKER_NAME_ENABLED()) MARKER_NAME()Copy to Clipboard Copied! Toggle word wrap Toggle overflow - A new
stapoption,-G VAR=VALUE, allows users to override global variables by passing the settings tostaprunas module options. - Iterating with
foreachcan now explicitly save the value for the loop. - A new operator,
@entry, is available for automatically saving an expression at entry time for use in a.returnprobe.
This update also applies the following fixes:
- The
stap-prepscript, packaged with SystemTap, requiresyumdownloader(supplied byyum-utils). However,yum-utilsis not a dependency of SystemTap. With this update,yum-utilsis now a dependency of SystemTap. (BZ#513672) - Whenever SystemTap invoked
useradd, it did so without specifying a UID; as such, any such invocations could result in a 'BAD level' warning. With this update,stap-serverchecks the existence of a system UID/GID before invoking anadduser/groupaddcommand. A 155:155 static UID:GID pair will then be assigned to thestap-serveruser without UID/GID reservation. In the rare case that such a user already exists on the system, dynamic UID/GID allocation will be used. (BZ#555808) - When loading a module,
stapexecutesstapioto handle interactions. A bug inruntime/staprun/mainloop.cmade it possible forstapioto fail in executing a module control file even after successfully opening it. When this occurred,stapioreturned an "ERROR: unexpected EOF" when loading/unloading a kernel module concurrently. This update applies an upstream patch toruntime/staprun/mainloop.cthat instructsstapioto quit (instead of retrying) when a read error occurs, avoiding a loop. (BZ#557165) - When running
rpm -V systemtap systemtap-server, TPS reported two verification failures:systemtap-server.ppc64: /var/log/stap-server.log .M...UG. [tps:B]andsystemtap.ppc64: /usr/share/systemtap/runtime/uprobes .M....G. [tps:B]. This update applies an upstream patch that corrects this. (BZ#559633) - The Red Hat Enterprise Linux 5.4 version of SystemTap contained a
stap-prepscript that is missing in 5.5. This update returns thestap-prepscript. (BZ#573031) - When running multiple
stapengines simultaneously, it was possible for SystemTap to unload thestapmodule before running allutracecallback handlers. This could result in the kernel calling code in an unloaded module, which would result in a crash. To prevent this from occurring, this update patchesruntime/itrace.candruntime/task_finder.caccordingly, adding a loop that checks for running handlers. SystemTap will now only unload a module when it is safe to do so. (BZ#602706) - When running
service systemtap restarton a previously stopped script, the script remained halted instead of restarting. This was because the SystemTap initscript incorrectly defined theSCRIPTSvariable. With this update, SystemTap makes local copies of the$SCRIPTSglobal variable. This update also addsforce-reload,reload,condrestart, andtry-restartcommands. (BZ#607232) - The
prelinkutility is no longer a SystemTap dependency on Itanium. This dependency was added in previous releases for specific SystemTap test cases. (BZ#629190) - The
-Ioption when runningstapterminated abnormally with a segmentation fault because of the string literal at the end of the file. This update provides a workaround by adding a semi-colin (;) after the string literal, and a fix inparse.cxxthat only inspets the next token if there is one. (BZ#648420)
The following fixes were previously released in a separate, asynchronous errata:
- Due to a string copy being used instead of a formatted string copy, the argstring of the socketpair system call had a wrong "UNKNOWN VALUE". This issue is now resolved. (BZ#560720)
- Although the kernel in Red Hat Enterprise Linux 5.5 for the Itanium architecture introduced a new pipe system call handler,
sys_ia64_pipe, the function was not added to the SystemTap tapset. As a result, probing the system call from the script viaprobe syscall.pipedid not succeed. This error has been fixed, the new function has been added to the tapset, and the pipe system call should now be probed correctly. (BZ#568032) - Previously, a change in register contents (such as
$return) on the Itanium architecture caused a crash due to a flaw in the way the values in the memory were set. Now, a change in register contents no longer results in a crash. (BZ#598615)
For a more detailed list of upstream enhancements and bug fixes applied by the re-base, refer to the following link:
All SystemTap users are advised to apply this update.
1.148.2. RHBA-2010:0608: bug fix update Copy linkLink copied to clipboard!
Copy linkLink copied to clipboard!
Updated systemtap packages that resolve two bugs are now available for Red Hat Enterprise Linux 5.
SystemTap is an instrumentation system for systems running the Linux kernel, version 2.6. Developers can write scripts to collect data on the operation of the system.
This update resolves the following bugs:
* due to a string copy being used instead of a formatted string copy, the argstring of the socketpair system call had a wrong "UNKNOWN VALUE". This issue is now resolved. ( BZ#617099)
* previously, a change in register contents (such as $return) on Itanium caused a crash due to a flaw in the way the values in the memory were set. Now, no crash happens when register contents change. ( BZ#617100)
All SystemTap users are advised to upgrade to these updated packages, which fix these bugs.
1.148.3. RHBA-2010:0525: bug fix update Copy linkLink copied to clipboard!
Copy linkLink copied to clipboard!
Updated systemtap packages that fix a bug are now available.
SystemTap is an instrumentation system for systems running the Linux kernel, version 2.6. Developers can write scripts to collect data on the operation of the system.
This update fixes the following bug:
* although the kernel in Red Hat Enterprise Linux 5.5 for the Itanium architecture introduced a new pipe system call handler, "sys_ia64_pipe", the function was not added to the SystemTap tapset. As a result, probing the system call from the script via "probe syscall.pipe" did not succeed. This error has been fixed, the new function has been added to the tapset, and the pipe system call should now be probed correctly. ( BZ#604022)
Affected SystemTap users should upgrade to these updated packages, which resolve this issue.