diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-12-20 09:58:10 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-12-20 09:58:10 +0100 |
commit | 236c9ad1f87088bb07ebdd136b8432f83dfd1e14 (patch) | |
tree | ae8713c9878593521f2cb517891f123f178fdd83 /block/blk-iocost.c | |
parent | f2b42379c57682d4b127283da109fa1a3317966a (diff) | |
parent | a7904a538933c525096ca2ccde1e60d0ee62c08e (diff) |
Merge 5.16-rc6 into usb-next
We need the USB fixes in here as well.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'block/blk-iocost.c')
-rw-r--r-- | block/blk-iocost.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/block/blk-iocost.c b/block/blk-iocost.c index a5b37cc65b17..769b64394298 100644 --- a/block/blk-iocost.c +++ b/block/blk-iocost.c @@ -2311,7 +2311,14 @@ static void ioc_timer_fn(struct timer_list *timer) hwm = current_hweight_max(iocg); new_hwi = hweight_after_donation(iocg, old_hwi, hwm, usage, &now); - if (new_hwi < hwm) { + /* + * Donation calculation assumes hweight_after_donation + * to be positive, a condition that a donor w/ hwa < 2 + * can't meet. Don't bother with donation if hwa is + * below 2. It's not gonna make a meaningful difference + * anyway. + */ + if (new_hwi < hwm && hwa >= 2) { iocg->hweight_donating = hwa; iocg->hweight_after_donation = new_hwi; list_add(&iocg->surplus_list, &surpluses); |