DTrace Improvements
A number of bug fixes and enhancements including module and utility updates are included for DTrace on UEK R4u6, bringing the current version to 0.6.1.
The following are other notable changes that are included:
-
Bug fixes
Numerous bug fixes have been applied to provide greater stability and better performance.
-
DTrace lockstat provider added
A patch that adds a definition for the lockstat DTrace provider has been added in this update. DTrace lockstat support enables the dynamic tracing of kernel locking events, for example, which locks are most frequently used, which locks exhibit the most contention, and which locks are held the longest.
-
Dynamically sized
tracemem()
action addedAn optional third argument form has been added to the
tracemem()
action to support variable-sized structures. This feature was previously added to Oracle Solaris DTrace. -
FBT improvements
Several patches and bug fixes were applied to improve performance and expand the capability of the Function Boundary Tracing (FBT) module.
-
I/O provider added for NFS
In this update, DTrace I/O provider
start
anddone
probes have been added for NFS and DTrace I/O provider probes have been added for NFSread
andwrite
requests. -
llquantize()
aggregation addedThe linear-log quantize aggregating action,
llquantize()
, provides log/linear results and enables you to collect data in linear-step buckets. This feature was previously added to Oracle Solaris. -
Lock-free algorithm implemented for IPI function calls
The implementation of the lock-free algorithm reduces the amount of IPI (interprocessor interrupts) function calls that are observed on the system. Instead of relying on IPI traps that can cause a barrier, the lock-free algorithm is more lightweight,thereby reducing stress to the kernel and CPU, and improving system performance.
-
Structure member names can be the same as D keywords
A bug fix has been applied to fix a problem where syntax errors occurred if structure member names clashed with D keywords, for example,
struct
andgroup.self
. You can now refer to structure members by using the same names as D keywords. -
USDT support for 32-bit applications on 64-bit hosts
A bug fix has been applied to enable user-level, statically defined tracing (USDT) support for 32-bit applications on 64-bit hosts.