From b24506b1c900d17f21cd33e808f47ead42d8741f Mon Sep 17 00:00:00 2001 From: Alex Reimers <alex@bigswitch.com> Date: Tue, 3 Apr 2012 11:50:35 -0700 Subject: [PATCH] Fix an issue causing infinite broadcast loops in OpenFlow topologies that have loops. --- .../java/net/floodlightcontroller/core/internal/Controller.java | 2 +- .../java/net/floodlightcontroller/forwarding/Forwarding.java | 1 + .../staticflowentry/StaticFlowEntryPusher.java | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/floodlightcontroller/core/internal/Controller.java b/src/main/java/net/floodlightcontroller/core/internal/Controller.java index f5b9aa3d2..cb0b623fc 100644 --- a/src/main/java/net/floodlightcontroller/core/internal/Controller.java +++ b/src/main/java/net/floodlightcontroller/core/internal/Controller.java @@ -1341,7 +1341,7 @@ public class Controller @Override public void handleOutgoingMessage(IOFSwitch sw, OFMessage m, FloodlightContext bc) { - if (log.isDebugEnabled()) { + if (log.isTraceEnabled()) { String str = OFMessage.getDataAsString(sw, m, bc); log.trace("{}", str); } diff --git a/src/main/java/net/floodlightcontroller/forwarding/Forwarding.java b/src/main/java/net/floodlightcontroller/forwarding/Forwarding.java index 098b62cc1..68b1d3409 100644 --- a/src/main/java/net/floodlightcontroller/forwarding/Forwarding.java +++ b/src/main/java/net/floodlightcontroller/forwarding/Forwarding.java @@ -201,6 +201,7 @@ public class Forwarding extends ForwardingBase implements IFloodlightModule { log.trace("doFlood, drop broadcast packet, pi={}, from a blocked port, " + "srcSwitchTuple={}, linkInfo={}", new Object[] {pi, srcSwTuple}); } + return; } // Set Action to flood diff --git a/src/main/java/net/floodlightcontroller/staticflowentry/StaticFlowEntryPusher.java b/src/main/java/net/floodlightcontroller/staticflowentry/StaticFlowEntryPusher.java index 91e086cbb..d56ac3fb7 100644 --- a/src/main/java/net/floodlightcontroller/staticflowentry/StaticFlowEntryPusher.java +++ b/src/main/java/net/floodlightcontroller/staticflowentry/StaticFlowEntryPusher.java @@ -267,7 +267,7 @@ public class StaticFlowEntryPusher if (row.get(key) == null) continue; if ( key.equals(COLUMN_SWITCH) || key.equals(COLUMN_NAME) - || key.equals("id")) // "id" seems implicit in cassandra + || key.equals("id")) continue; // already handled // explicitly ignore timeouts and wildcards if ( key.equals(COLUMN_HARD_TIMEOUT) || key.equals(COLUMN_IDLE_TIMEOUT) || -- GitLab