diff options
-rw-r--r-- | net/mac80211/rc80211_pid.h | 2 | ||||
-rw-r--r-- | net/mac80211/rc80211_pid_algo.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/net/mac80211/rc80211_pid.h b/net/mac80211/rc80211_pid.h index 425eb708182a..81aa4ea19958 100644 --- a/net/mac80211/rc80211_pid.h +++ b/net/mac80211/rc80211_pid.h | |||
@@ -38,7 +38,7 @@ | |||
38 | * link quality is good, the controller will fail to adjust failed frames | 38 | * link quality is good, the controller will fail to adjust failed frames |
39 | * percentage to the target. This is intentional. | 39 | * percentage to the target. This is intentional. |
40 | */ | 40 | */ |
41 | #define RC_PID_TARGET_PF (11 << RC_PID_ARITH_SHIFT) | 41 | #define RC_PID_TARGET_PF 11 |
42 | 42 | ||
43 | /* Rate behaviour normalization quantity over time. */ | 43 | /* Rate behaviour normalization quantity over time. */ |
44 | #define RC_PID_NORM_OFFSET 3 | 44 | #define RC_PID_NORM_OFFSET 3 |
diff --git a/net/mac80211/rc80211_pid_algo.c b/net/mac80211/rc80211_pid_algo.c index 631e46888267..b84e51480c84 100644 --- a/net/mac80211/rc80211_pid_algo.c +++ b/net/mac80211/rc80211_pid_algo.c | |||
@@ -210,7 +210,7 @@ static void rate_control_pid_sample(struct rc_pid_info *pinfo, | |||
210 | rate_control_pid_normalize(pinfo, mode->num_rates); | 210 | rate_control_pid_normalize(pinfo, mode->num_rates); |
211 | 211 | ||
212 | /* Compute the proportional, integral and derivative errors. */ | 212 | /* Compute the proportional, integral and derivative errors. */ |
213 | err_prop = pinfo->target - pf; | 213 | err_prop = (pinfo->target << RC_PID_ARITH_SHIFT) - pf; |
214 | 214 | ||
215 | err_avg = spinfo->err_avg_sc >> pinfo->smoothing_shift; | 215 | err_avg = spinfo->err_avg_sc >> pinfo->smoothing_shift; |
216 | spinfo->err_avg_sc = spinfo->err_avg_sc - err_avg + err_prop; | 216 | spinfo->err_avg_sc = spinfo->err_avg_sc - err_avg + err_prop; |