8da10cce7c
The amount of GC I/O on the write buffer is managed by the rate-limiter, which is calculated as a function of the number of available free blocks. When reaching the stable point, we risk having scheduled more I/Os for GC than are allowed on the write buffer. This would result on the GC semaphore balancing the outstanding read GC I/Os to be reported as "hung", though the behavior is normal. Solve this by allowing to schedule when we detect that the read GC path is not moving forward. Signed-off-by: Javier González <javier@cnexlabs.com> Signed-off-by: Matias Bjørling <m@bjorling.me> Signed-off-by: Jens Axboe <axboe@kernel.dk> |
||
---|---|---|
.. | ||
core.c | ||
Kconfig | ||
Makefile | ||
pblk-cache.c | ||
pblk-core.c | ||
pblk-gc.c | ||
pblk-init.c | ||
pblk-map.c | ||
pblk-rb.c | ||
pblk-read.c | ||
pblk-recovery.c | ||
pblk-rl.c | ||
pblk-sysfs.c | ||
pblk-write.c | ||
pblk.h | ||
rrpc.c | ||
rrpc.h |