QEMU環境で trace-cmd のタイムスタンプが逆行してしまう問題について
現象
QEMU上で動作しているゲストLinux環境で trace-cmd で取得したログを Trace Compass に読み込むと、タイムスタンプが逆行する現象が発生して困っています。
具体的には、以下のように直前まで進んでいた時刻が、突然数百ミリ秒〜数秒過去のタイムスタンプに戻るイベントが混じります。
発生状況
09:09:52.654 939 559 sched_waking …
09:09:52.654 947 343 sched_wakeup …
09:09:52.654 953 584 qdisc_dequeue …
09:09:52.520 741 278 rcu_utilization … ← 過去に戻る
09:09:52.520 744 594 rcu_preempt_task …
Trace Compass 上では、イベントの時系列が崩れて可視化が正しく行われているか判断できない状況です。
▶ 環境
仮想環境: QEMU(WindRiverLinux)
ゲストOS: Linux (Ubuntu 20.04)
取得方法: trace-cmd record -e all
可視化ツール: Trace Compass
▶ 試したこと
trace-cmd のバッファサイズ変更
clocksource の確認(ゲストは TSC を使用)
Trace Compass のインポート設定変更
などを試しましたが改善せず。
▶ 知りたいこと
QEMU環境で ftrace / trace-cmd のタイムスタンプ逆行が起きる既知事例はありますか?
QEMU で TSC が安定しない場合に、時計が逆行して見える可能性はありますか?
この問題を回避するための推奨設定や調査ポイントがあれば知りたいです。
同じ現象を経験した方や、対処方法をご存じの方がいれば教えていただきたいです。
0 likes