ofproto: Rate-limit STP status errors on non-existent ports.
authorJustin Pettit <jpettit@nicira.com>
Wed, 2 May 2012 17:20:07 +0000 (10:20 -0700)
committerJustin Pettit <jpettit@nicira.com>
Wed, 2 May 2012 17:20:07 +0000 (10:20 -0700)
As part of the bridge's main loop, it queries the STP status of all
ports.  If the port doesn't exist, log files can become filled with
warning messages.  This situation is very unusual, since system devices
do not normally disappear, but it's easy enough to rate-limit these
messages.

Bug #10936

Reported-by: Reid Price <reid@nicira.com>
Signed-off-by: Justin Pettit <jpettit@nicira.com>
ofproto/ofproto.c

index cb46d26df5e4e4fd2d547417be6617e24c2616aa..6ef2a5d723360c77d27a71d97c2600924d116087 100644 (file)
@@ -664,8 +664,8 @@ ofproto_port_get_stp_status(struct ofproto *ofproto, uint16_t ofp_port,
 {
     struct ofport *ofport = ofproto_get_port(ofproto, ofp_port);
     if (!ofport) {
-        VLOG_WARN("%s: cannot get STP status on nonexistent port %"PRIu16,
-                  ofproto->name, ofp_port);
+        VLOG_WARN_RL(&rl, "%s: cannot get STP status on nonexistent "
+                     "port %"PRIu16, ofproto->name, ofp_port);
         return ENODEV;
     }