aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mm/page-writeback.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/page-writeback.c b/mm/page-writeback.c
index 0713bfbf0954..1534ebd6e70f 100644
--- a/mm/page-writeback.c
+++ b/mm/page-writeback.c
@@ -692,7 +692,7 @@ static unsigned long bdi_position_ratio(struct backing_dev_info *bdi,
692 * => fast response on large errors; small oscillation near setpoint 692 * => fast response on large errors; small oscillation near setpoint
693 */ 693 */
694 setpoint = (freerun + limit) / 2; 694 setpoint = (freerun + limit) / 2;
695 x = div_s64((setpoint - dirty) << RATELIMIT_CALC_SHIFT, 695 x = div_s64(((s64)setpoint - (s64)dirty) << RATELIMIT_CALC_SHIFT,
696 limit - setpoint + 1); 696 limit - setpoint + 1);
697 pos_ratio = x; 697 pos_ratio = x;
698 pos_ratio = pos_ratio * x >> RATELIMIT_CALC_SHIFT; 698 pos_ratio = pos_ratio * x >> RATELIMIT_CALC_SHIFT;