diff options
author | Ben Pfaff <blp@nicira.com> | 2011-08-03 15:01:11 -0700 |
---|---|---|
committer | Ben Pfaff <blp@nicira.com> | 2011-08-03 20:51:19 -0700 |
commit | 6da1e8091eb2e19de7ba5e0c73ac3e7dd437743d (patch) | |
tree | 0a82a71d8418d30831d9ba567c184c41792c781c /ofproto/in-band.h | |
parent | 2bd5b8145b7cf1851d51e258ab614414f2496aae (diff) | |
download | openvswitch-6da1e8091eb2e19de7ba5e0c73ac3e7dd437743d.tar.gz |
in-band: Delete remaining rules when disabling in-band control.
in_band_destroy() doesn't remove all of the rules that in-band control
adds (and it cannot, because that might require waiting for an existing
asynchronous flow modification or addition to complete), so turning on
other-config:disable-in-band or deleting all of the OpenFlow controllers
did not delete all of the in-band rules.
This commit fixes the problem by making the in-band control object hang
around until all of the flows that it set up have actually been deleted.
This problem was introduced as part of commit 7ee20df "ofproto: Implement
asynchronous OFPT_FLOW_MOD commands."
Reported-by: Brad Hall <brad@nicira.com>
Diffstat (limited to 'ofproto/in-band.h')
-rw-r--r-- | ofproto/in-band.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ofproto/in-band.h b/ofproto/in-band.h index e2d8e80b8..f7f2ec656 100644 --- a/ofproto/in-band.h +++ b/ofproto/in-band.h @@ -35,7 +35,7 @@ void in_band_set_queue(struct in_band *, int queue_id); void in_band_set_remotes(struct in_band *, const struct sockaddr_in *, size_t n); -void in_band_run(struct in_band *); +bool in_band_run(struct in_band *); void in_band_wait(struct in_band *); bool in_band_msg_in_hook(struct in_band *, const struct flow *, |