Bcache
bcache writeback_percent 最大值
我正在嘗試設置
writeback_percent
值 > 40 但它只接受 0 到 40 之間的值。
如果我設置
echo 50 > /sys/block/bcache0/bcache/writeback_percent
然後當我讀取值時
more /sys/block/bcache0/bcache/writeback_percent
我有 40。對於 value<=40,設置工作正常。
我對記憶體類型的設置是
more /sys/block/bcache0/bcache/cache_mode writethrough [writeback] writearound none
我知道這很危險,但這對我來說不是問題。
據我了解 writeback_percent 是記憶體中臟數據使用的百分比,為什麼我不能使用 90% 或 100% 的可用空間?可能是我不太了解這個設置嗎?
這是 bcache 驅動器程式碼 - linux/drivers/md/bcache/writeback.h 中的硬編碼值。更改此限制的唯一方法是從原始碼重建驅動程序。
根據 https://evilpiepirate.org/git/linux-bcache.git/tree/Documentation/bcache.txt writeback_percent 如果非零,bcache 會嘗試通過限制後台寫回並使用 PD 控制器來保持這個百分比的記憶體臟平穩調整速率。
所以這是臟記憶體數量的目標。解釋下面的辯論,這個目標是動態實現的,而活動是不斷發生的。如果有足夠的時間,bcache 很可能會完成回寫操作,即使以 writeback_rate 也是如此。