B.7. bmap トレースポイント

ブロックマッピングとは、どのファイルシステムでも中核となるタスクです。GFS2 は、1 ブロックあたり 2 ビットの従来のビットマップベースのシステムを採用しています。このサブシステムにおけるトレースポイントの主要目的は、ブロックの割り当てとマッピングの所要時間をモニタリングすることです。
gfs2_bmap トレースポイントは、1 回の bmap 操作につき 2 回 (bmap 要求を表示するために起動時に 1 回と、結果を表示するために終了時に 1 回) 呼び出されます。これにより、要求と結果を容易に照合して、ファイルシステムの異なる部分や、異なるファイルオフセット、あるいは異なるファイルのブロックをマップするのに要した時間を簡単に測定することができます。また、返されたエクステントサイズの平均値と要求されたサイズを比較することもできます。
gfs2_rs トレースポイントは、ブロックアロケーターで作成、使用、および破棄されたブロック予約を追跡します。
割り当てられたブロックを追跡するために、割り当てに対してだけでなく、ブロックの解放に対しても gfs2_block_alloc が呼び出されます。割り当てはすべて、ブロックの対象の inode に応じて参照されるため、これを利用して、どの物理ブロックがライブファイルシステム内のどのファイルに属しているかを追跡できます。これは特に blktrace と併用した場合に有用です。これにより、問題のある I/O パターンが表示され、このトレースポイントによって取得したマッピングを使用して適切な inode を再び参照することができます。