block/blk-throttle: Fix throttle slice time for SSDs#74
block/blk-throttle: Fix throttle slice time for SSDs#74blktests-ci[bot] wants to merge 2 commits intolinus-master_basefrom
Conversation
|
Upstream branch: 260f6f4 |
f092a9b to
0b59764
Compare
|
Upstream branch: d6084bb |
b04d1d8 to
ca0ff25
Compare
0b59764 to
aee5bd3
Compare
|
Upstream branch: 831462f |
ca0ff25 to
f8f0e95
Compare
aee5bd3 to
ef18525
Compare
|
Upstream branch: c93529a |
f8f0e95 to
b4795c8
Compare
ef18525 to
3851b3f
Compare
|
Upstream branch: cbbf0a7 |
b4795c8 to
7f2cff0
Compare
3851b3f to
28b3384
Compare
|
Upstream branch: 6a68cec |
7f2cff0 to
611cbd8
Compare
28b3384 to
8ab9be5
Compare
|
Upstream branch: f2d282e |
611cbd8 to
5e65358
Compare
8ab9be5 to
5b90760
Compare
|
Upstream branch: 89748ac |
5e65358 to
5b65b52
Compare
3893da1 to
aeddbbb
Compare
|
Upstream branch: 89748ac |
5b65b52 to
e23bd8b
Compare
aeddbbb to
f380900
Compare
|
Upstream branch: c30a135 |
4625cc7 to
6b8b4ab
Compare
ae9bce3 to
e263d6e
Compare
|
Upstream branch: 561c803 |
6b8b4ab to
86710ca
Compare
e263d6e to
77110f5
Compare
|
Upstream branch: b96ddbc |
86710ca to
bdc3946
Compare
77110f5 to
a2e0474
Compare
|
Upstream branch: 2b38afc |
bdc3946 to
ba68420
Compare
a2e0474 to
36a8aec
Compare
|
Upstream branch: 8f5ae30 |
ba68420 to
a375b1e
Compare
36a8aec to
1a46df6
Compare
|
Upstream branch: 53e760d |
a375b1e to
37ff59b
Compare
1a46df6 to
404c2ca
Compare
|
Upstream branch: 0e39a73 |
37ff59b to
79f3af1
Compare
|
Upstream branch: 8742b2d |
|
Upstream branch: 91325f3 |
|
Upstream branch: 3a4a036 |
|
Upstream branch: dfc0f63 |
|
Upstream branch: 0cc5352 |
|
Upstream branch: 24ea63e |
|
Upstream branch: d7ee5bd |
Commit d61fcfa ("blk-throttle: choose a small throtl_slice for SSD") introduced device type specific throttle slices if BLK_DEV_THROTTLING_LOW was enabled. Commit bf20ab5 ("blk-throttle: remove CONFIG_BLK_DEV_THROTTLING_LOW") removed support for BLK_DEV_THROTTLING_LOW, but left the device type specific throttle slices in place. This effectively changed throttling behavior on systems with SSD which now use a different and non-configurable slice time compared to non-SSD devices. Practical impact is that throughput tests with low configured throttle values (65536 bps) experience less than expected throughput on SSDs, presumably due to rounding errors associated with the small throttle slice time used for those devices. The same tests pass when setting the throttle values to 65536 * 4 = 262144 bps. The original code sets the throttle slice time to DFL_THROTL_SLICE_HD if CONFIG_BLK_DEV_THROTTLING_LOW is disabled. Restore that code to fix the problem. With that, DFL_THROTL_SLICE_SSD is no longer necessary. Revert to the original code and re-introduce DFL_THROTL_SLICE to replace both DFL_THROTL_SLICE_HD and DFL_THROTL_SLICE_SSD. This effectively reverts commit d61fcfa ("blk-throttle: choose a small throtl_slice for SSD"). After the removal of CONFIG_BLK_DEV_THROTTLING_LOW, it is no longer necessary to enable block accounting, so remove the call to blk_stat_enable_accounting(). With that, the track_bio_latency variable is no longer used and can be deleted from struct throtl_data. Also, including blk-stat.h is no longer necessary. While at it, also remove MAX_THROTL_SLICE since it is not used anymore. Fixes: bf20ab5 ("blk-throttle: remove CONFIG_BLK_DEV_THROTTLING_LOW") Cc: Yu Kuai <[email protected]> Cc: Tejun Heo <[email protected]> Signed-off-by: Guenter Roeck <[email protected]>
throtl_slice is now a constant. Remove the variable and use the constant directly where needed. Cc: Yu Kuai <[email protected]> Cc: Tejun Heo <[email protected]> Signed-off-by: Guenter Roeck <[email protected]>
|
Upstream branch: b19a97d |
Pull request for series with
subject: block/blk-throttle: Fix throttle slice time for SSDs
version: 1
url: https://patchwork.kernel.org/project/linux-block/list/?series=987100