0.6.1 (2017年8月7日)
ライセンスの変更:
-
ユーザー・スペースがUniversal Permissive License (UPL) v1.0でライセンスされるようになりました。カーネル・モジュールがGPLv2になり、他のツリー内カーネル・モジュールと同じパッケージで出荷されます。
/usr/lib64/dtrace/load_dtrace_modulesがyum installを試行しなくなりました(ただし、/etc/dtrace-modulesにリストされているmodprobeモジュールを除く)。
新機能:
-
新しいlink_ntop()サブルーチンが提供されます。これはinet_ntop()と同様ですが、リンク・レイヤー・アドレスを記述する判読可能な文字列を返します。現在、イーサネットおよびInfiniBandがサポートされています。
-
/etc/dtrace-modulesにデフォルトのモジュール・セットが提供されるようになりました。ファイルは0.4.5以降サポートされていますが、デフォルトでは/etc/dtrace-modulesは出荷されませんでした。
-
TCPおよびUDPプロバイダは、関連するトランスレータとともに実装されます。
-
IOプロバイダは完全に書き換えられ、大幅に改善されました。ほとんどのローカル・ファイル・システムがサポートされ、XFSとNFSが明示的にサポートされるようになりました。
バグ修正:
-
cpu変数を使用する前にsdt.koをロードする必要がありません。
-
dtrace -Gを使用してオブジェクト・ファイルを渡す場合にSPARC64で破損しなくなり、x86以前に行われた同様のバグ修正が繰り返されます。
-
SPARC64でのプロセス状態の追跡を少し改善します。
-
カーネル・タイプのビットフィールドのサポートが改善されています。ただし、一部のビットフィールド、特にマシン用語の境界を越えるビットフィールドはまだ機能しません。
-
dtrace_print_lquantize()では、最下位バケットの名前が正規化されなくなり、バケット・コンテンツのみが正規化されます(意図したとおり)。
-
jstack()が間違ったオフセットからデータをフェッチしており、スタック・ダンプの開始時にガベージ出力になっていました。
-
トレースされたプロセスの高アドレスからの位置合わせされていないデータの読取りに失敗しました。実際にはSPARCだけが、この失敗を引き起こすアドレスにデータを格納しており、ほとんどのアクセスは位置合わせされます。ただし、glibcの内部データ構造の変更に合わせて調整する機械が破損していたため、特定のglibcのアップグレード後にシンボルの検索に失敗します。
-
dtrace -Cおよび-Gでは、/usr/bin/cppおよび/usr/bin/ldにデフォルト設定するのではなく、PATHでcppとldを検索して、ソフトウェア・コレクションのdevtoolsetパッケージなど、デフォルト以外の場所のコンパイラで障害を修正するようになりました。
-
dtrace-utils-develにelfutils-libelf-develが必要になりました。(実際にはこの依存関係は常に存在していましたが、現在まで誤って省略されていました。)