mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-24 00:10:51 +07:00
blk-wbt: make sure throttle is enabled properly
[ Upstream commit 76a8040817b4b9c69b53f9b326987fa891b4082a ] After commita79050434b
("blk-rq-qos: refactor out common elements of blk-wbt"), if throttle was disabled by wbt_disable_default(), we could not enable again, fix this by set enable_state back to WBT_STATE_ON_DEFAULT. Fixes:a79050434b
("blk-rq-qos: refactor out common elements of blk-wbt") Signed-off-by: Zhang Yi <yi.zhang@huawei.com> Link: https://lore.kernel.org/r/20210619093700.920393-3-yi.zhang@huawei.com Signed-off-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
1c2f21a8a0
commit
d3dd2fe274
@ -637,9 +637,13 @@ void wbt_set_write_cache(struct request_queue *q, bool write_cache_on)
|
|||||||
void wbt_enable_default(struct request_queue *q)
|
void wbt_enable_default(struct request_queue *q)
|
||||||
{
|
{
|
||||||
struct rq_qos *rqos = wbt_rq_qos(q);
|
struct rq_qos *rqos = wbt_rq_qos(q);
|
||||||
|
|
||||||
/* Throttling already enabled? */
|
/* Throttling already enabled? */
|
||||||
if (rqos)
|
if (rqos) {
|
||||||
|
if (RQWB(rqos)->enable_state == WBT_STATE_OFF_DEFAULT)
|
||||||
|
RQWB(rqos)->enable_state = WBT_STATE_ON_DEFAULT;
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
/* Queue not registered? Maybe shutting down... */
|
/* Queue not registered? Maybe shutting down... */
|
||||||
if (!blk_queue_registered(q))
|
if (!blk_queue_registered(q))
|
||||||
|
Loading…
Reference in New Issue
Block a user