From 2784a40b81278fc0bd4381ed2fe6e881f0ee51ad Mon Sep 17 00:00:00 2001 From: Joe Stringer Date: Wed, 19 Feb 2014 10:26:31 -0800 Subject: [PATCH] ofproto: Remove 'force-miss-model' configuration. This configuration item was introduced to assist testing of upcall handling behaviour with and without facets. Facets were removed in commit e79a6c833e0d7237, so this patch removes the configuration item. Signed-off-by: Joe Stringer Signed-off-by: Ben Pfaff --- ofproto/ofproto-provider.h | 4 ---- ofproto/ofproto.c | 8 -------- ofproto/ofproto.h | 8 -------- vswitchd/bridge.c | 20 -------------------- vswitchd/vswitch.xml | 22 ---------------------- 5 files changed, 62 deletions(-) diff --git a/ofproto/ofproto-provider.h b/ofproto/ofproto-provider.h index 08a8ac16f..d05adbc6e 100644 --- a/ofproto/ofproto-provider.h +++ b/ofproto/ofproto-provider.h @@ -468,10 +468,6 @@ extern unsigned ofproto_flow_limit; * ofproto-dpif implementation. */ extern size_t n_handlers, n_revalidators; -/* Determines which model to use for handling misses in the ofproto-dpif - * implementation */ -extern enum ofproto_flow_miss_model flow_miss_model; - static inline struct rule * rule_from_cls_rule(const struct cls_rule *cls_rule) { diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index 62c97a21b..f69736c78 100644 --- a/ofproto/ofproto.c +++ b/ofproto/ofproto.c @@ -307,7 +307,6 @@ static size_t allocated_ofproto_classes; struct ovs_mutex ofproto_mutex = OVS_MUTEX_INITIALIZER; unsigned ofproto_flow_limit = OFPROTO_FLOW_LIMIT_DEFAULT; -enum ofproto_flow_miss_model flow_miss_model = OFPROTO_HANDLE_MISS_AUTO; size_t n_handlers, n_revalidators; @@ -698,13 +697,6 @@ ofproto_set_flow_limit(unsigned limit) ofproto_flow_limit = limit; } -/* Sets the path for handling flow misses. */ -void -ofproto_set_flow_miss_model(unsigned model) -{ - flow_miss_model = model; -} - /* If forward_bpdu is true, the NORMAL action will forward frames with * reserved (e.g. STP) destination Ethernet addresses. if forward_bpdu is false, * the NORMAL action will drop these frames. */ diff --git a/ofproto/ofproto.h b/ofproto/ofproto.h index 0ac44541a..1f9cb1589 100644 --- a/ofproto/ofproto.h +++ b/ofproto/ofproto.h @@ -215,13 +215,6 @@ int ofproto_port_dump_done(struct ofproto_port_dump *); #define OFPROTO_FLOW_LIMIT_DEFAULT 200000 -/* How flow misses should be handled in ofproto-dpif */ -enum ofproto_flow_miss_model { - OFPROTO_HANDLE_MISS_AUTO, /* Based on flow eviction threshold. */ - OFPROTO_HANDLE_MISS_WITH_FACETS, /* Always create facets. */ - OFPROTO_HANDLE_MISS_WITHOUT_FACETS /* Always handle without facets.*/ -}; - const char *ofproto_port_open_type(const char *datapath_type, const char *port_type); int ofproto_port_add(struct ofproto *, struct netdev *, ofp_port_t *ofp_portp); @@ -243,7 +236,6 @@ void ofproto_set_extra_in_band_remotes(struct ofproto *, const struct sockaddr_in *, size_t n); void ofproto_set_in_band_queue(struct ofproto *, int queue_id); void ofproto_set_flow_limit(unsigned limit); -void ofproto_set_flow_miss_model(unsigned model); void ofproto_set_forward_bpdu(struct ofproto *, bool forward_bpdu); void ofproto_set_mac_table_config(struct ofproto *, unsigned idle_time, size_t max_entries); diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c index cde4bd059..e7dd597e1 100644 --- a/vswitchd/bridge.c +++ b/vswitchd/bridge.c @@ -194,7 +194,6 @@ static void bridge_del_ports(struct bridge *, static void bridge_add_ports(struct bridge *, const struct shash *wanted_ports); -static void bridge_configure_flow_miss_model(const char *opt); static void bridge_configure_datapath_id(struct bridge *); static void bridge_configure_netflow(struct bridge *); static void bridge_configure_forward_bpdu(struct bridge *); @@ -499,9 +498,6 @@ bridge_reconfigure(const struct ovsrec_open_vswitch *ovs_cfg) smap_get_int(&ovs_cfg->other_config, "n-handler-threads", 0), smap_get_int(&ovs_cfg->other_config, "n-revalidator-threads", 0)); - bridge_configure_flow_miss_model(smap_get(&ovs_cfg->other_config, - "force-miss-model")); - /* Destroy "struct bridge"s, "struct port"s, and "struct iface"s according * to 'ovs_cfg', with only very minimal configuration otherwise. * @@ -878,22 +874,6 @@ port_configure(struct port *port) free(s.lacp_slaves); } -static void -bridge_configure_flow_miss_model(const char *opt) -{ - enum ofproto_flow_miss_model model = OFPROTO_HANDLE_MISS_AUTO; - - if (opt) { - if (!strcmp(opt, "with-facets")) { - model = OFPROTO_HANDLE_MISS_WITH_FACETS; - } else if (!strcmp(opt, "without-facets")) { - model = OFPROTO_HANDLE_MISS_WITHOUT_FACETS; - } - } - - ofproto_set_flow_miss_model(model); -} - /* Pick local port hardware address and datapath ID for 'br'. */ static void bridge_configure_datapath_id(struct bridge *br) diff --git a/vswitchd/vswitch.xml b/vswitchd/vswitch.xml index e915cafdf..b640a0f5f 100644 --- a/vswitchd/vswitch.xml +++ b/vswitchd/vswitch.xml @@ -136,28 +136,6 @@

- -

- Specifies userspace behaviour for handling flow misses. This takes - precedence over flow-eviction-threshold. -

-

-

-
auto
-
Handle automatically based on the flow-eviction-threshold and - the flow setup governer (default, recommended).
-
with-facets
-
Always create facets. Expensive kernel flow creation and - statistics tracking is always performed, even on flows with only - a small number of packets.
-
without-facets
-
Always handle without facets. Forces flow misses to be handled - in userspace. May cause an increase in CPU usage and packet loss - on high throughput.
-
-

-
-

-- 2.43.0