Frequently we've run into controller bugs which result in hundreds of thousands, or even millions of rules being installed in an OpenFlow table. This isn't something trouble-shooters naturally think of to check for, so it's nice to have a low rate warning message to hint at the potential problem.
Signed-off-by: Ethan Jackson <et...@nicira.com> --- ofproto/ofproto.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index 7b1d478..754d290 100644 --- a/ofproto/ofproto.c +++ b/ofproto/ofproto.c @@ -1522,6 +1522,14 @@ ofproto_run(struct ofproto *p) continue; } + if (classifier_count(&table->cls) > 100000) { + static struct vlog_rate_limit count_rl = + VLOG_RATE_LIMIT_INIT(1, 1); + VLOG_WARN_RL(&count_rl, "Table %"PRIuSIZE" has an excessive" + " number of rules: %d", i, + classifier_count(&table->cls)); + } + ovs_mutex_lock(&ofproto_mutex); CLS_FOR_EACH (rule, cr, &table->cls) { if (rule->idle_timeout || rule->hard_timeout) { -- 1.8.1.2 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev