2.0.0-1.4 (2020年12月9日)
スタンドアロンのユーザー・スペース実装の4番目のエラータ。
これは、機能が制限されたプレリリースです。
新機能:
-
集積体が実装されました。現在のところ、@、@a、@fooなど、索引付けされていない集積体のみがサポートされています。@[1]、@a["foo"].はサポートされていません
-
すべての集積関数(avg()、count()、llquantize()、lquantize()、max()、min()、quantize()、quantize()、stddev()、sum())が実装されました。
-
集積関数の引数チェックが改善されました。
-
標準集積のprinta()アクションが実装されました。
バグ修正:
-
ビット単位の否定が修正されました。
-
quantize()のレポートが修正されました。最後のビンにすべての値がマップされたときにデータが報告されませんでした。
-
コンシューマがトレースを停止するようにトリガーしたときにEND節が正しく実行されるようになりました。
内部変更:
-
集積体が(BPFマップ内の) CPUごとのカーネル・バッファにデータを累積するようになり、コンシューマは必要に応じてすべてのCPUバッファのスナップショットを取得します。つまり、コンシューマ・レベルで発生する集積体がすべてのCPUにわたる値の集積体を構成します。
-
BPFコードの手動生成をサポートするマクロが追加されました。2つのC文を取得するために使用される各BPF命令: 命令が定義され、リストに追加されました。新しいマクロを使用すると、このような行が何百も排除され、Cコードが生成しているBPFのように見えます。
-
開発時に無効になっていたエラー・メッセージ「%s %s( )はD式からコールできない場合があります(Dプログラムのコンテキストが必要)」が復元されます。
-
廃止されたdt_bpf_builtins.hヘッダー・ファイルを削除します。
-
dtrace_aggvarid_tをdtrace_aggid_tに置き換え、DTRACEAGG_*をDT_AGG_*に置き換えます。
コンパイルの修正:
-
再配置がない場合でも、プリコンパイルされたBPF関数が正しくロードされるようになりました。
テストスイートの変更:
-
コメント、入力ミスおよび命名がクリーン・アップされました。
-
新しいテストが追加されたか、新しい機能のためにXFAIL注釈が更新されました。