Re: [PATCH 2/2] tc: policing requires a rate estimator
From: Patrick McHardy <hidden>
Date: 2008-11-25 18:32:23
Stephen Hemminger wrote:
quoted hunk ↗ jump to hunk
Found that while trying average rate policing, it was possible to request average rate policing without a rate estimator. This results in no policing which is harmless but incorrect. Since policing could be setup in two steps, need to check in the kernel. Signed-off-by: Stephen Hemminger <redacted> --- include/net/gen_stats.h | 1 + net/core/gen_estimator.c | 30 +++++++++++++++++++++++++++--- net/sched/act_police.c | 16 ++++++++++++---- 3 files changed, 40 insertions(+), 7 deletions(-)--- a/net/sched/act_police.c 2008-11-25 10:15:50.000000000 -0800 +++ b/net/sched/act_police.c 2008-11-25 10:17:54.000000000 -0800@@ -182,6 +182,12 @@ override: R_tab = qdisc_get_rtab(&parm->rate, tb[TCA_POLICE_RATE]); if (R_tab == NULL) goto failure; + + if (!est && !gen_estimator_active(&police->tcf_rate_est)) { + err = -EINVAL; + goto failure;
This leaks the R_tab reference.