git://git.onelab.eu
/
sliver-openvswitch.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
6348e94
)
ofproto: Factor conditional out of loop in send_flow_removed().
author
Ben Pfaff
<blp@nicira.com>
Thu, 7 Oct 2010 17:08:21 +0000
(10:08 -0700)
committer
Justin Pettit
<jpettit@nicira.com>
Sat, 9 Oct 2010 00:18:37 +0000
(17:18 -0700)
ofproto/ofproto.c
patch
|
blob
|
history
diff --git
a/ofproto/ofproto.c
b/ofproto/ofproto.c
index
552c6e3
..
138f571
100644
(file)
--- a/
ofproto/ofproto.c
+++ b/
ofproto/ofproto.c
@@
-4430,6
+4430,10
@@
send_flow_removed(struct ofproto *p, struct rule *rule,
struct ofconn *prev;
struct ofpbuf *buf = NULL;
struct ofconn *prev;
struct ofpbuf *buf = NULL;
+ if (!rule->send_flow_removed) {
+ return;
+ }
+
/* We limit the maximum number of queued flow expirations it by accounting
* them under the counter for replies. That works because preventing
* OpenFlow requests from being processed also prevents new flows from
/* We limit the maximum number of queued flow expirations it by accounting
* them under the counter for replies. That works because preventing
* OpenFlow requests from being processed also prevents new flows from
@@
-4438,7
+4442,7
@@
send_flow_removed(struct ofproto *p, struct rule *rule,
prev = NULL;
LIST_FOR_EACH (ofconn, struct ofconn, node, &p->all_conns) {
prev = NULL;
LIST_FOR_EACH (ofconn, struct ofconn, node, &p->all_conns) {
- if (r
ule->send_flow_removed && r
conn_is_connected(ofconn->rconn)
+ if (rconn_is_connected(ofconn->rconn)
&& ofconn_receives_async_msgs(ofconn)) {
if (prev) {
queue_tx(ofpbuf_clone(buf), prev, prev->reply_counter);
&& ofconn_receives_async_msgs(ofconn)) {
if (prev) {
queue_tx(ofpbuf_clone(buf), prev, prev->reply_counter);