デバイスに空き領域がないため、BlktraceファイルのFio再生が失敗します。

デバイスに空き領域がないため、BlktraceファイルのFio再生が失敗します。

私はblktraceで生成されたトレースファイルを再生するためにfio-3.14を使用しています。私のLinuxバージョンはMint 18.3で、カーネルは4.10.0-38-genericです。ルートとして、次の手順に従います。

  1. 最初のステップ

次のワークロードオプションを使用して、/home/arghavan/fio/testにfioワークロードを適用しました。また、blktrace -d /dev/sda6fioはワークロードを実行している/ homeにマウントされているので、/ dev / sda6でトレースをキャプチャするために次のコマンドを使用しました。

Fioワークロード

; Read 4 files with aio at different depths
[global]
ioengine=libaio
directory=/home/arghavan/fio/test

buffered=0
rw=randread
bs=128k
size=512m


[file1]
iodepth=4

[file2]
iodepth=32

[file3]
iodepth=8

[file4]
iodepth=16 
  1. ステップ2

私は次のコマンドを使用して、fioがトレースをblkparse sda6 -a read -o /dev/null -d /root/traces/sda6_trace.bin再生するために使用できるblkparseバイナリを作成します。

  1. 第三段階

私はfioと次のコマンドを使用してfio --name=rp1 --read_iolog=/home/arghavan/traces/sda6_trace.bin --replay_no_stall=1 --replay_redirect=/dev/sda6トレースを再生します。ただし、fioは次のエラーを報告します。

fio: io_u error on file /dev/sda6: No space left on device: write offset=278643662848, buflen=4096
fio: pid=11495, err=28/file:io_u.c:1785, func=io_u error, error=No space left on device
Jobs: 1 (f=1): [f(1)][-.-%][eta 00m:00s]
rp1: (groupid=0, jobs=1): err=28 (file:io_u.c:1785, func=io_u error, error=No space left on device)

デバイスに空き容量がたくさんありますが、問題が何であるかわかりません。どうすればいいですか?

答え1

パーティション全体のI / Oではなく、blktraceパーティションのI / Oのみを記録しましたか?わかります/dev/sda6/dev/sdahttps://www.spinics.net/lists/linux-btrace/msg00417.htmlしかし、主流のカーネルで使用されているかどうかはわかりません...

関連情報