テストステ論

高テス協会会長が, テストステロンに関する情報をお届けします.

(writeboost report) 作業内容

ライトブーストに修正したい点があるので, 作業をする. すでに1は終了

  1. WB(ERR|WARN|INFO)をなくす. これはもともとデバッグ用で, linenoとメッセージを表示していた. カーネルモジュールのデバッグはけっこうだるい. ビルドが簡単だとか色々メリットはあるが, ツリーに入ってると楽に使えるツールがシンボル探索などの理由から使えなくなる. というわけで基本的にはプリント文主体でデバッグしていく(それでもコンパイルが速いので楽)のだが, 今はもうジョーのツリーに入ってるので, WBXXXマクロを使う理由はない. 実際には, 今はlinenoまでは表示してなくてcallerの関数名だけなのだが, これすらも要らない. device-mapper全体との統一感を醸し出すために削除することとした.

  2. ライトブーストは, cache deviceからbacking deviceにデータをライトバックするのだが, この呼び方がMigrationとWritebackの2つある(凄まじく歴史的な理由から). Writebackに統一することとする. テストの修正も必要.

  3. dm-thinやdm-cacheと同様に, ライトバリアを受けてから, その後に発行されるREQ_FUAなどを少し待つわけだが, 他のターゲットとは違い, timerを使って任意ms待てるようにしている(dm-thinなどは, workがスケジュールされるまでの遅延だけ). type 0とtype 1とでインターフェイスを統一するためにも, この設定項目を排除する. テストの修正も必要だし, 測定も必要. もっとも重要なのはdbenchの測定だと思う.

将来的には, ドキュメントの方も修正する必要があるが, それは今日はやらない.


(追記)

一日で全作業やった.

1, 2はマージ済. 3はマージ待