続・L2ARCの空き容量が16EB(16.0E)と表示される件

こないだの続き。

その後システムをFreeBSD 10-STABLE (r283857)に更新しL2ARCを有効にしていたが、これまた、たまたまzpool iostatを流してたら16EBになる瞬間を捉えられた。

               capacity     operations    bandwidth
pool        alloc   free   read  write   read  write
----------  -----  -----  -----  -----  -----  -----
zhome        731G   197G      0     68      0  8.01M
  mirror     731G   197G      0     68      0  8.01M
    ada0p1      -      -      0     68      0  8.13M
    ada3p1      -      -      0     74      0  8.88M
logs            -      -      -      -      -      -
  mirror     128K  7.94G      0      0      0      0
    ada1p3      -      -      0      0      0      0
    ada9p3      -      -      0      0      0      0
cache           -      -      -      -      -      -
  ada9p5    40.0G  1.78M      0      0      0      0
----------  -----  -----  -----  -----  -----  -----

               capacity     operations    bandwidth
pool        alloc   free   read  write   read  write
----------  -----  -----  -----  -----  -----  -----
zhome        731G   197G      0    369      0  16.3M
  mirror     731G   197G      0    369      0  16.3M
    ada0p1      -      -      0    197      0  16.2M
    ada3p1      -      -      0    191      0  15.5M
logs            -      -      -      -      -      -
  mirror    13.8M  7.92G      0      0      0      0
    ada1p3      -      -      0      0      0      0
    ada9p3      -      -      0      0      0      0
cache           -      -      -      -      -      -
  ada9p5    40.0G  16.0E      0     63      0  7.96M  ★★ここ★★
----------  -----  -----  -----  -----  -----  -----

               capacity     operations    bandwidth
pool        alloc   free   read  write   read  write
----------  -----  -----  -----  -----  -----  -----
zhome        731G   197G      0      0      0      0
  mirror     731G   197G      0      0      0      0
    ada0p1      -      -      0      0      0      0
    ada3p1      -      -      0      0      0      0
logs            -      -      -      -      -      -
  mirror    13.8M  7.92G      0      0      0      0
    ada1p3      -      -      0      0      0      0
    ada9p3      -      -      0      0      0      0
cache           -      -      -      -      -      -
  ada9p5    40.0G  1.40M      0     33      0  4.25M
----------  -----  -----  -----  -----  -----  -----

               capacity     operations    bandwidth
pool        alloc   free   read  write   read  write
----------  -----  -----  -----  -----  -----  -----
zhome        731G   197G      0      0      0      0
  mirror     731G   197G      0      0      0      0
    ada0p1      -      -      0      0      0      0
    ada3p1      -      -      0      0      0      0
logs            -      -      -      -      -      -
  mirror    13.8M  7.92G      0      0      0      0
    ada1p3      -      -      0      0      0      0
    ada9p3      -      -      0      0      0      0
cache           -      -      -      -      -      -
  ada9p5    40.0G   924K      0     37      0  4.74M
----------  -----  -----  -----  -----  -----  -----

               capacity     operations    bandwidth
pool        alloc   free   read  write   read  write
----------  -----  -----  -----  -----  -----  -----
zhome        731G   197G      0      0      0      0
  mirror     731G   197G      0      0      0      0
    ada0p1      -      -      0      0      0      0
    ada3p1      -      -      0      0      0      0
logs            -      -      -      -      -      -
  mirror    13.8M  7.92G      0      0      0      0
    ada1p3      -      -      0      0      0      0
    ada9p3      -      -      0      0      0      0
cache           -      -      -      -      -      -
  ada9p5    40.0G   424K      0     41      0  5.24M
----------  -----  -----  -----  -----  -----  -----

               capacity     operations    bandwidth
pool        alloc   free   read  write   read  write
----------  -----  -----  -----  -----  -----  -----
zhome        731G   197G      0      0      0      0
  mirror     731G   197G      0      0      0      0
    ada0p1      -      -      0      0      0      0
    ada3p1      -      -      0      0      0      0
logs            -      -      -      -      -      -
  mirror    13.8M  7.92G      0      0      0      0
    ada1p3      -      -      0      0      0      0
    ada9p3      -      -      0      0      0      0
cache           -      -      -      -      -      -
  ada9p5    40.0G  16.0E      0     46      0  5.86M  ★★ここ★★
----------  -----  -----  -----  -----  -----  -----

               capacity     operations    bandwidth
pool        alloc   free   read  write   read  write
----------  -----  -----  -----  -----  -----  -----
zhome        731G   197G      0     77      0  9.12M
  mirror     731G   197G      0     77      0  9.12M
    ada0p1      -      -      0     77      0  9.24M
    ada3p1      -      -      0     84      0  10.1M
logs            -      -      -      -      -      -
  mirror    13.8M  7.92G      0      0      0      0
    ada1p3      -      -      0      0      0      0
    ada9p3      -      -      0      0      0      0
cache           -      -      -      -      -      -
  ada9p5    40.0G  16.0E      0      0      0      0
----------  -----  -----  -----  -----  -----  -----

L2ARCの空きが無くなると16.0Eになるっぽい。unsignedな型で負数を扱おうとして爆発してるように見える。というか、r273060のコミットログに、思いっきり「the number became negative and overflows」と理由が載っていた(´・ω・`)

更にarc.cのログを追っていたら、r275096で修正がリバートされてるやないか!4Kセクタデバイスを考慮しておらず正しい修正ではなかったとの事……。解決には時間が掛かりそうな雰囲気。




  • blog/2015/2015-06-10.txt
  • 最終更新: 2015-06-10 12:41
  • by Decomo