projects
/
cascardo
/
linux.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge tag 'spi-v4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi
[cascardo/linux.git]
/
block
/
blk-throttle.c
diff --git
a/block/blk-throttle.c
b/block/blk-throttle.c
index
f1aba26
..
a3ea826
100644
(file)
--- a/
block/blk-throttle.c
+++ b/
block/blk-throttle.c
@@
-780,9
+780,11
@@
static bool tg_may_dispatch(struct throtl_grp *tg, struct bio *bio,
/*
* If previous slice expired, start a new one otherwise renew/extend
* existing slice to make sure it is at least throtl_slice interval
/*
* If previous slice expired, start a new one otherwise renew/extend
* existing slice to make sure it is at least throtl_slice interval
- * long since now.
+ * long since now. New slice is started only for empty throttle group.
+ * If there is queued bio, that means there should be an active
+ * slice and it should be extended instead.
*/
*/
- if (throtl_slice_used(tg, rw))
+ if (throtl_slice_used(tg, rw)
&& !(tg->service_queue.nr_queued[rw])
)
throtl_start_new_slice(tg, rw);
else {
if (time_before(tg->slice_end[rw], jiffies + throtl_slice))
throtl_start_new_slice(tg, rw);
else {
if (time_before(tg->slice_end[rw], jiffies + throtl_slice))