Freebsd
swap_pager:無限期等待緩衝區
我
ZFS
用來接收一些大約 60GB 的數據集:bzip2 -c -d mail.bz2 | zfs receive -F tank/jails/mail
幾乎在完成之前,我開始多次收到此錯誤:
swap_pager: indefinite wait buffer: bufobj: 0, blkno: 16888849, size:4096 swap_pager: indefinite wait buffer: bufobj: 0, blkno: 16867303 size: 8192 swap_pager: indefinite wait buffer: bufobj: 0, blkno: 16888849, size:4096 swap_pager: indefinite wait buffer: bufobj: 0, blkno: 16889145, size: 12288
不斷的
blkno:
重複在嘗試修復它時,我在 ZFS 上添加了一個交換:
zfs create -V 64G -o org.freebsd:swap=on -o checksum=off -o compression=off -o dedup=off -o sync=disabled -o primarycache=none tank/swap
然後啟用它:
# swapon /dev/zvol/tank/swap
的輸出
swapinfo -h
是:> swapinfo -h Device 1K-blocks Used Avail Capacity /dev/zvol/tank/swap 67108864 77M 64G 0% /dev/ada0p2 2097152 76M 1.9G 4% /dev/ada1p2 2097152 76M 1.9G 4% Total 71303168 229M 68G 0%
但過了一會兒,伺服器變得沒有響應。
關於如何解決這個問題以及這意味著什麼的任何想法
swap_pager
。
刪除定義的交換
/etc/fstab
並僅使用在 ZFS 池中創建的新交換就可以了:# swapinfo Device 1K-blocks Used Avail Capacity /dev/zvol/tank/swap 67108864 0 67108864 0%