Mass rename of offload provider structures and functions to improve
coherence and readability. Most of these symbols are local and
not exported, so they do not require extensive prefixes.

Signed-off-by: Eelco Chaudron <[email protected]>
---
 lib/dpif-offload-dpdk-netdev.c  | 106 ++++----
 lib/dpif-offload-dpdk-private.h |  74 +++---
 lib/dpif-offload-dpdk.c         | 352 ++++++++++++-------------
 lib/dpif-offload-dummy.c        | 437 +++++++++++++++-----------------
 lib/dpif-offload-tc-netdev.c    |  68 +++--
 lib/dpif-offload-tc-private.h   |  51 ++--
 lib/dpif-offload-tc.c           | 314 +++++++++++------------
 7 files changed, 645 insertions(+), 757 deletions(-)

diff --git a/lib/dpif-offload-dpdk-netdev.c b/lib/dpif-offload-dpdk-netdev.c
index 9a66bd413..a43d490af 100644
--- a/lib/dpif-offload-dpdk-netdev.c
+++ b/lib/dpif-offload-dpdk-netdev.c
@@ -208,7 +208,7 @@ netdev_offload_dpdk_pmd_data_find_pmd_and_delete(
 
 static void
 netdev_offload_dpdk_pmd_data_cleanup_mappings(
-    struct dpif_offload_dpdk *offload, struct pmd_data *mapping)
+    struct dpdk_offload *offload, struct pmd_data *mapping)
 {
     struct pmd_id_to_flow_ref_data *data;
 
@@ -222,8 +222,7 @@ netdev_offload_dpdk_pmd_data_cleanup_mappings(
         cmap_remove(&mapping->pmd_id_to_flow_ref, &data->node,
                     hash_int(data->pmd_id, 0));
 
-        dpif_offload_dpdk_flow_unreference(offload, data->pmd_id,
-                                           data->flow_reference);
+        dpdk_flow_unreference(offload, data->pmd_id, data->flow_reference);
         ovsrcu_postpone(free, data);
     }
 
@@ -1391,7 +1390,7 @@ vport_to_rte_tunnel(struct netdev *vport,
 }
 
 static int
-add_vport_match(struct dpif_offload_dpdk *offload,
+add_vport_match(struct dpdk_offload *offload,
                 struct flow_patterns *patterns,
                 odp_port_t orig_in_port,
                 struct netdev *tnldev)
@@ -1403,7 +1402,7 @@ add_vport_match(struct dpif_offload_dpdk *offload,
     struct netdev *physdev;
     int ret;
 
-    physdev = dpif_offload_dpdk_get_netdev(offload, orig_in_port);
+    physdev = dpdk_get_netdev(offload, orig_in_port);
     if (physdev == NULL) {
         return -1;
     }
@@ -1613,7 +1612,7 @@ parse_gre_match(struct flow_patterns *patterns,
 }
 
 static int OVS_UNUSED
-parse_flow_tnl_match(struct dpif_offload_dpdk *offload,
+parse_flow_tnl_match(struct dpdk_offload *offload,
                      struct netdev *tnldev,
                      struct flow_patterns *patterns,
                      odp_port_t orig_in_port,
@@ -1637,7 +1636,7 @@ parse_flow_tnl_match(struct dpif_offload_dpdk *offload,
 }
 
 static int
-parse_flow_match(struct dpif_offload_dpdk *offload OVS_UNUSED,
+parse_flow_match(struct dpdk_offload *offload OVS_UNUSED,
                  struct netdev *netdev,
                  odp_port_t orig_in_port OVS_UNUSED,
                  struct flow_patterns *patterns,
@@ -2078,7 +2077,7 @@ add_represented_port_action(struct flow_actions *actions,
 }
 
 static int
-add_output_action(struct dpif_offload_dpdk *offload,
+add_output_action(struct dpdk_offload *offload,
                   struct netdev *netdev,
                   struct flow_actions *actions,
                   const struct nlattr *nla)
@@ -2088,7 +2087,7 @@ add_output_action(struct dpif_offload_dpdk *offload,
     int ret = 0;
 
     port = nl_attr_get_odp_port(nla);
-    outdev = dpif_offload_dpdk_get_netdev(offload, port);
+    outdev = dpdk_get_netdev(offload, port);
     if (outdev == NULL) {
         VLOG_DBG_RL(&rl, "Cannot find netdev for odp port %"PRIu32, port);
         return -1;
@@ -2370,7 +2369,7 @@ add_tunnel_push_action(struct flow_actions *actions,
 }
 
 static int
-parse_clone_actions(struct dpif_offload_dpdk *offload,
+parse_clone_actions(struct dpdk_offload *offload,
                     struct netdev *netdev,
                     struct flow_actions *actions,
                     const struct nlattr *clone_actions,
@@ -2412,7 +2411,7 @@ add_jump_action(struct flow_actions *actions, uint32_t 
group)
 }
 
 static int OVS_UNUSED
-add_tnl_pop_action(struct dpif_offload_dpdk *offload,
+add_tnl_pop_action(struct dpdk_offload *offload,
                    struct netdev *netdev,
                    struct flow_actions *actions,
                    const struct nlattr *nla)
@@ -2426,7 +2425,7 @@ add_tnl_pop_action(struct dpif_offload_dpdk *offload,
     int ret;
 
     port = nl_attr_get_odp_port(nla);
-    vport = dpif_offload_dpdk_get_netdev(offload, port);
+    vport = dpdk_get_netdev(offload, port);
     if (vport == NULL) {
         return -1;
     }
@@ -2456,7 +2455,7 @@ add_tnl_pop_action(struct dpif_offload_dpdk *offload,
 }
 
 static int
-parse_flow_actions(struct dpif_offload_dpdk *offload,
+parse_flow_actions(struct dpdk_offload *offload,
                    struct netdev *netdev,
                    struct flow_actions *actions,
                    struct nlattr *nl_actions,
@@ -2524,7 +2523,7 @@ parse_flow_actions(struct dpif_offload_dpdk *offload,
 }
 
 static struct rte_flow *
-netdev_offload_dpdk_actions(struct dpif_offload_dpdk *offload,
+netdev_offload_dpdk_actions(struct dpdk_offload *offload,
                             struct netdev *netdev,
                             struct flow_patterns *patterns,
                             struct nlattr *nl_actions,
@@ -2553,7 +2552,7 @@ out:
 }
 
 static struct ufid_to_rte_flow_data *
-netdev_offload_dpdk_add_flow(struct dpif_offload_dpdk *offload,
+netdev_offload_dpdk_add_flow(struct dpdk_offload *offload,
                              struct pmd_data *pmd_mapping,
                              struct netdev *netdev,
                              struct match *match,
@@ -2605,7 +2604,7 @@ out:
 }
 
 static int
-netdev_offload_dpdk_flow_destroy(struct dpif_offload_dpdk *offload,
+netdev_offload_dpdk_flow_destroy(struct dpdk_offload *offload,
                                  struct ufid_to_rte_flow_data *rte_flow_data,
                                  bool force_destroy, bool keep_flow_mark)
 {
@@ -2664,8 +2663,7 @@ netdev_offload_dpdk_flow_destroy(struct dpif_offload_dpdk 
*offload,
         if (!keep_flow_mark) {
             /* Do this after ufid_to_rte_flow_disassociate(), as it needs a
              * valid flow mark to do its work. */
-            dpif_offload_dpdk_free_flow_mark(offload,
-                                             rte_flow_data->flow_mark);
+            dpdk_free_flow_mark(offload, rte_flow_data->flow_mark);
             rte_flow_data->flow_mark = INVALID_FLOW_MARK;
         }
     } else {
@@ -2700,13 +2698,12 @@ get_netdev_odp_cb(struct netdev *netdev,
 }
 
 int
-netdev_offload_dpdk_flow_put(struct dpif_offload_dpdk *offload,
-                             unsigned pmd_id, void *flow_reference,
-                             struct netdev *netdev, struct match *match,
-                             struct nlattr *actions, size_t actions_len,
-                             const ovs_u128 *ufid, odp_port_t orig_in_port,
-                             void **previous_flow_reference,
-                             struct dpif_flow_stats *stats)
+dpdk_netdev_flow_put(struct dpdk_offload *offload, unsigned pmd_id,
+                     void *flow_reference, struct netdev *netdev,
+                     struct match *match, struct nlattr *actions,
+                     size_t actions_len, const ovs_u128 *ufid,
+                     odp_port_t orig_in_port, void **previous_flow_reference,
+                     struct dpif_flow_stats *stats)
 {
     struct ufid_to_rte_flow_data *rte_flow_data;
     struct dpif_flow_stats old_stats;
@@ -2733,7 +2730,7 @@ netdev_offload_dpdk_flow_put(struct dpif_offload_dpdk 
*offload,
         /* Extract the orig_in_port from physdev as in case of modify the one
          * provided by upper layer cannot be used.
          */
-        dpif_offload_dpdk_traverse_ports(offload, get_netdev_odp_cb, &aux);
+        dpdk_traverse_ports(offload, get_netdev_odp_cb, &aux);
         orig_in_port = aux.odp_port;
         old_stats = rte_flow_data->stats;
         modification = true;
@@ -2752,7 +2749,7 @@ netdev_offload_dpdk_flow_put(struct dpif_offload_dpdk 
*offload,
         netdev_offload_dpdk_pmd_data_associate(pmd_mapping, pmd_id,
                                                flow_reference);
         *previous_flow_reference = NULL;
-        flow_mark = dpif_offload_dpdk_allocate_flow_mark(offload);
+        flow_mark = dpdk_allocate_flow_mark(offload);
     } else /* if (rte_flow_data) */ {
         pmd_mapping = ovsrcu_get(struct pmd_data *,
                                  &rte_flow_data->pmd_mapping);
@@ -2776,7 +2773,7 @@ netdev_offload_dpdk_flow_put(struct dpif_offload_dpdk 
*offload,
                                                           pmd_mapping);
             ovsrcu_postpone(netdev_offload_dpdk_pmd_data_cleanup_mapping,
                             pmd_mapping);
-            dpif_offload_dpdk_free_flow_mark(offload, flow_mark);
+            dpdk_free_flow_mark(offload, flow_mark);
             return -1;
         }
     }
@@ -2791,11 +2788,9 @@ netdev_offload_dpdk_flow_put(struct dpif_offload_dpdk 
*offload,
 }
 
 int
-netdev_offload_dpdk_flow_del(struct dpif_offload_dpdk *offload,
-                             struct netdev *netdev, unsigned pmd_id,
-                             const ovs_u128 *ufid,
-                             void *flow_reference,
-                             struct dpif_flow_stats *stats)
+dpdk_netdev_flow_del(struct dpdk_offload *offload, struct netdev *netdev,
+                     unsigned pmd_id, const ovs_u128 *ufid,
+                     void *flow_reference, struct dpif_flow_stats *stats)
 {
     struct ufid_to_rte_flow_data *rte_flow_data;
 
@@ -2818,8 +2813,7 @@ netdev_offload_dpdk_flow_del(struct dpif_offload_dpdk 
*offload,
 }
 
 int
-netdev_offload_dpdk_init(struct netdev *netdev,
-                         unsigned int offload_thread_count)
+dpdk_netdev_init(struct netdev *netdev, unsigned int offload_thread_count)
 {
     int ret = EOPNOTSUPP;
 
@@ -2838,7 +2832,7 @@ netdev_offload_dpdk_init(struct netdev *netdev,
 }
 
 void
-netdev_offload_dpdk_uninit(struct netdev *netdev)
+dpdk_netdev_uninit(struct netdev *netdev)
 {
     if (netdev_dpdk_flow_api_supported(netdev, true)) {
         offload_data_destroy(netdev);
@@ -2846,13 +2840,11 @@ netdev_offload_dpdk_uninit(struct netdev *netdev)
 }
 
 int
-netdev_offload_dpdk_flow_get(struct netdev *netdev,
-                             struct match *match OVS_UNUSED,
-                             struct nlattr **actions OVS_UNUSED,
-                             const ovs_u128 *ufid,
-                             struct dpif_flow_stats *stats,
-                             struct dpif_flow_attrs *attrs,
-                             struct ofpbuf *buf OVS_UNUSED)
+dpdk_netdev_flow_get(struct netdev *netdev, struct match *match OVS_UNUSED,
+                     struct nlattr **actions OVS_UNUSED, const ovs_u128 *ufid,
+                     struct dpif_flow_stats *stats,
+                     struct dpif_flow_attrs *attrs,
+                     struct ofpbuf *buf OVS_UNUSED)
 {
     struct rte_flow_query_count query = { .reset = 1 };
     struct ufid_to_rte_flow_data *rte_flow_data;
@@ -2904,7 +2896,7 @@ out:
 }
 
 static void
-flush_netdev_flows_in_related(struct dpif_offload_dpdk *offload,
+flush_netdev_flows_in_related(struct dpdk_offload *offload,
                               struct netdev *netdev, struct netdev *related)
 {
     unsigned int tid = dpdk_offload_thread_id();
@@ -2925,7 +2917,7 @@ flush_netdev_flows_in_related(struct dpif_offload_dpdk 
*offload,
     }
 }
 struct flush_in_vport_aux {
-    struct dpif_offload_dpdk *offload;
+    struct dpdk_offload *offload;
     struct netdev *netdev;
 };
 
@@ -2945,8 +2937,7 @@ flush_in_vport_cb(struct netdev *vport,
 }
 
 int
-netdev_offload_dpdk_flow_flush(struct dpif_offload_dpdk *offload,
-                               struct netdev *netdev)
+dpdk_netdev_flow_flush(struct dpdk_offload *offload, struct netdev *netdev)
 {
     flush_netdev_flows_in_related(offload, netdev, netdev);
 
@@ -2956,7 +2947,7 @@ netdev_offload_dpdk_flow_flush(struct dpif_offload_dpdk 
*offload,
             .netdev = netdev
         };
 
-        dpif_offload_dpdk_traverse_ports(offload, flush_in_vport_cb, &aux);
+        dpdk_traverse_ports(offload, flush_in_vport_cb, &aux);
     }
 
     return 0;
@@ -3004,7 +2995,7 @@ out:
 }
 
 static struct netdev *
-get_vport_netdev(struct dpif_offload_dpdk *offload,
+get_vport_netdev(struct dpdk_offload *offload,
                  struct rte_flow_tunnel *tunnel,
                  odp_port_t *odp_port)
 {
@@ -3020,14 +3011,16 @@ get_vport_netdev(struct dpif_offload_dpdk *offload,
     } else if (tunnel->type == RTE_FLOW_ITEM_TYPE_GRE) {
         aux.type = "gre";
     }
-    dpif_offload_dpdk_traverse_ports(offload, get_vport_netdev_cb, &aux);
+    dpdk_traverse_ports(offload, get_vport_netdev_cb, &aux);
 
     return aux.vport;
 }
 
-int netdev_offload_dpdk_hw_miss_packet_recover(
-    struct dpif_offload_dpdk *offload, struct netdev *netdev, unsigned pmd_id,
-    struct dp_packet *packet, void **flow_reference)
+int
+dpdk_netdev_hw_miss_packet_recover(struct dpdk_offload *offload,
+                                   struct netdev *netdev, unsigned pmd_id,
+                                   struct dp_packet *packet,
+                                   void **flow_reference)
 {
     struct pmd_id_to_flow_ref_data *pmd_data = NULL;
     struct rte_flow_restore_info rte_restore_info;
@@ -3132,8 +3125,8 @@ close_vport_netdev:
 }
 
 uint64_t
-netdev_offload_dpdk_flow_count(struct netdev *netdev,
-                               unsigned int offload_thread_count)
+dpdk_netdev_flow_count(struct netdev *netdev,
+                       unsigned int offload_thread_count)
 {
     struct netdev_offload_dpdk_data *data;
     uint64_t total = 0;
@@ -3153,8 +3146,7 @@ netdev_offload_dpdk_flow_count(struct netdev *netdev,
 }
 
 uint64_t
-netdev_offload_dpdk_flow_count_by_thread(struct netdev *netdev,
-                                         unsigned int tid)
+dpdk_netdev_flow_count_by_thread(struct netdev *netdev, unsigned int tid)
 {
     struct netdev_offload_dpdk_data *data;
 
diff --git a/lib/dpif-offload-dpdk-private.h b/lib/dpif-offload-dpdk-private.h
index 716e0f163..738be5e14 100644
--- a/lib/dpif-offload-dpdk-private.h
+++ b/lib/dpif-offload-dpdk-private.h
@@ -18,56 +18,46 @@
 #define DPIF_OFFLOAD_DPDK_PRIVATE_H
 
 /* Forward declarations of private structures. */
-struct dpif_offload_dpdk;
+struct dpdk_offload;
 struct netdev;
 
 /* DPIF offload dpdk implementation-specific functions.  These should only be
  * used by the associated netdev offload provider, i.e.,
  * dpif-offload-dpdk-netdev. */
 unsigned int dpdk_offload_thread_id(void);
-void dpif_offload_dpdk_flow_unreference(struct dpif_offload_dpdk *offload,
-                                        unsigned pmd_id, void *flow_reference);
-uint32_t dpif_offload_dpdk_allocate_flow_mark(struct dpif_offload_dpdk *);
-void dpif_offload_dpdk_free_flow_mark(struct dpif_offload_dpdk *,
-                                      uint32_t flow_mark);
-struct netdev *dpif_offload_dpdk_get_netdev(
-    const struct dpif_offload_dpdk *, odp_port_t port_no);
-void dpif_offload_dpdk_traverse_ports(
-    const struct dpif_offload_dpdk *offload,
-    bool (*cb)(struct netdev *, odp_port_t, void *), void *aux);
-
+void dpdk_flow_unreference(struct dpdk_offload *offload, unsigned pmd_id,
+                           void *flow_reference);
+uint32_t dpdk_allocate_flow_mark(struct dpdk_offload *);
+void dpdk_free_flow_mark(struct dpdk_offload *, uint32_t flow_mark);
+struct netdev *dpdk_get_netdev(const struct dpdk_offload *,
+                               odp_port_t port_no);
+void dpdk_traverse_ports(const struct dpdk_offload *offload,
+                         bool (*cb)(struct netdev *, odp_port_t, void *),
+                         void *aux);
 
 /* dpif-offload-dpdk-netdev specific offload functions.  These should only be
  * used by the associated dpif offload provider, i.e., dpif-offload-dpdk. */
-int netdev_offload_dpdk_init(struct netdev *,
-                             unsigned int offload_thread_count);
-void netdev_offload_dpdk_uninit(struct netdev *);
-int netdev_offload_dpdk_flow_flush(struct dpif_offload_dpdk *,
-                                   struct netdev *);
-uint64_t netdev_offload_dpdk_flow_count(struct netdev *,
-                                        unsigned int offload_thread_count);
-uint64_t netdev_offload_dpdk_flow_count_by_thread(struct netdev *,
-                                                  unsigned int tid);
-int netdev_offload_dpdk_hw_miss_packet_recover(struct dpif_offload_dpdk *,
-                                               struct netdev *,
-                                               unsigned pmd_id,
-                                               struct dp_packet *,
-                                               void **flow_reference);
-int netdev_offload_dpdk_flow_put(struct dpif_offload_dpdk *,
-                                 unsigned pmd_id, void *flow_reference,
-                                 struct netdev *, struct match *,
-                                 struct nlattr *actions, size_t actions_len,
-                                 const ovs_u128 *ufid, odp_port_t orig_in_port,
-                                 void **previous_flow_reference,
-                                 struct dpif_flow_stats *);
-int netdev_offload_dpdk_flow_del(struct dpif_offload_dpdk *,
-                                 struct netdev *, unsigned pmd_id,
-                                 const ovs_u128 *ufid,
-                                 void *flow_reference,
-                                 struct dpif_flow_stats *);
-int netdev_offload_dpdk_flow_get(struct netdev *, struct match *,
-                                 struct nlattr **actions, const ovs_u128 *ufid,
-                                 struct dpif_flow_stats *,
-                                 struct dpif_flow_attrs *, struct ofpbuf *buf);
+int dpdk_netdev_init(struct netdev *, unsigned int offload_thread_count);
+void dpdk_netdev_uninit(struct netdev *);
+int dpdk_netdev_flow_flush(struct dpdk_offload *, struct netdev *);
+uint64_t dpdk_netdev_flow_count(struct netdev *,
+                                unsigned int offload_thread_count);
+uint64_t dpdk_netdev_flow_count_by_thread(struct netdev *, unsigned int tid);
+int dpdk_netdev_hw_miss_packet_recover(struct dpdk_offload *, struct netdev *,
+                                       unsigned pmd_id, struct dp_packet *,
+                                       void **flow_reference);
+int dpdk_netdev_flow_put(struct dpdk_offload *, unsigned pmd_id,
+                         void *flow_reference, struct netdev *, struct match *,
+                         struct nlattr *actions, size_t actions_len,
+                         const ovs_u128 *ufid, odp_port_t orig_in_port,
+                         void **previous_flow_reference,
+                         struct dpif_flow_stats *);
+int dpdk_netdev_flow_del(struct dpdk_offload *, struct netdev *,
+                         unsigned pmd_id, const ovs_u128 *ufid,
+                         void *flow_reference, struct dpif_flow_stats *);
+int dpdk_netdev_flow_get(struct netdev *, struct match *,
+                         struct nlattr **actions, const ovs_u128 *ufid,
+                         struct dpif_flow_stats *, struct dpif_flow_attrs *,
+                         struct ofpbuf *buf);
 
 #endif /* DPIF_OFFLOAD_DPDK_PRIVATE_H */
diff --git a/lib/dpif-offload-dpdk.c b/lib/dpif-offload-dpdk.c
index 3f7404d2d..ba9e469a8 100644
--- a/lib/dpif-offload-dpdk.c
+++ b/lib/dpif-offload-dpdk.c
@@ -53,7 +53,7 @@ struct dpdk_offload_thread {
         atomic_uint64_t enqueued_item;
         struct mov_avg_cma cma;
         struct mov_avg_ema ema;
-        struct dpif_offload_dpdk *offload;
+        struct dpdk_offload *offload;
         pthread_t thread;
     );
 };
@@ -74,7 +74,7 @@ struct dpdk_offload_flow_item {
 
 struct dpdk_offload_flush_item {
     struct netdev *netdev;
-    struct dpif_offload_dpdk *offload;
+    struct dpdk_offload *offload;
     struct ovs_barrier *barrier;
 };
 
@@ -91,7 +91,7 @@ struct dpdk_offload_thread_item {
 };
 
 /* dpif offload interface for the dpdk rte_flow implementation. */
-struct dpif_offload_dpdk {
+struct dpdk_offload {
     struct dpif_offload offload;
     struct dpif_offload_port_mgr *port_mgr;
 
@@ -108,18 +108,18 @@ struct dpif_offload_dpdk {
     unsigned int offload_thread_count; /* Number of offload threads. */
 };
 
-static struct dpif_offload_dpdk *
-dpif_offload_dpdk_cast(const struct dpif_offload *offload)
+static struct dpdk_offload *
+dpdk_offload_cast(const struct dpif_offload *offload)
 {
     dpif_offload_assert_class(offload, &dpif_offload_dpdk_class);
-    return CONTAINER_OF(offload, struct dpif_offload_dpdk, offload);
+    return CONTAINER_OF(offload, struct dpdk_offload, offload);
 }
 
 DECLARE_EXTERN_PER_THREAD_DATA(unsigned int, dpdk_offload_thread_id);
 DEFINE_EXTERN_PER_THREAD_DATA(dpdk_offload_thread_id, OVSTHREAD_ID_UNSET);
 
 uint32_t
-dpif_offload_dpdk_allocate_flow_mark(struct dpif_offload_dpdk *offload)
+dpdk_allocate_flow_mark(struct dpdk_offload *offload)
 {
     static struct ovsthread_once init_once = OVSTHREAD_ONCE_INITIALIZER;
     unsigned int uid = dpdk_offload_thread_id() \
@@ -141,8 +141,7 @@ dpif_offload_dpdk_allocate_flow_mark(struct 
dpif_offload_dpdk *offload)
 }
 
 void
-dpif_offload_dpdk_free_flow_mark(struct dpif_offload_dpdk *offload,
-                                 uint32_t flow_mark)
+dpdk_free_flow_mark(struct dpdk_offload *offload, uint32_t flow_mark)
 {
     if (flow_mark != INVALID_FLOW_MARK) {
         unsigned int uid = dpdk_offload_thread_id() \
@@ -174,8 +173,7 @@ dpdk_offload_thread_id(void)
 }
 
 static unsigned int
-dpif_offload_dpdk_ufid_to_thread_id(struct dpif_offload_dpdk *offload,
-                                    const ovs_u128 ufid)
+dpdk_ufid_to_thread_id(struct dpdk_offload *offload, const ovs_u128 ufid)
 {
     uint32_t ufid_hash;
 
@@ -190,8 +188,7 @@ dpif_offload_dpdk_ufid_to_thread_id(struct 
dpif_offload_dpdk *offload,
 }
 
 static bool
-dpif_offload_dpdk_is_offloading_netdev(struct dpif_offload_dpdk *offload,
-                                       struct netdev *netdev)
+dpdk_is_offloading_netdev(struct dpdk_offload *offload, struct netdev *netdev)
 {
     const struct dpif_offload *netdev_offload;
 
@@ -202,7 +199,7 @@ dpif_offload_dpdk_is_offloading_netdev(struct 
dpif_offload_dpdk *offload,
 }
 
 static struct dpdk_offload_thread_item *
-dpif_offload_dpdk_alloc_flow_offload(int op)
+dpdk_alloc_flow_offload(int op)
 {
     struct dpdk_offload_thread_item *item;
     struct dpdk_offload_flow_item *flow_offload;
@@ -217,7 +214,7 @@ dpif_offload_dpdk_alloc_flow_offload(int op)
 }
 
 static void
-dpif_offload_dpdk_free_flow_offload__(struct dpdk_offload_thread_item *offload)
+dpdk_free_flow_offload__(struct dpdk_offload_thread_item *offload)
 {
     struct dpdk_offload_flow_item *flow_offload = &offload->data->flow;
 
@@ -226,17 +223,17 @@ dpif_offload_dpdk_free_flow_offload__(struct 
dpdk_offload_thread_item *offload)
 }
 
 static void
-dpif_offload_dpdk_free_flow_offload(struct dpdk_offload_thread_item *offload)
+dpdk_free_flow_offload(struct dpdk_offload_thread_item *offload)
 {
-    ovsrcu_postpone(dpif_offload_dpdk_free_flow_offload__, offload);
+    ovsrcu_postpone(dpdk_free_flow_offload__, offload);
 }
 
 static void
-dpif_offload_dpdk_free_offload(struct dpdk_offload_thread_item *offload)
+dpdk_free_offload(struct dpdk_offload_thread_item *offload)
 {
     switch (offload->type) {
     case DPDK_OFFLOAD_FLOW:
-        dpif_offload_dpdk_free_flow_offload(offload);
+        dpdk_free_flow_offload(offload);
         break;
     case DPDK_OFFLOAD_FLUSH:
         free(offload);
@@ -247,9 +244,8 @@ dpif_offload_dpdk_free_offload(struct 
dpdk_offload_thread_item *offload)
 }
 
 static void
-dpif_offload_dpdk_append_offload(const struct dpif_offload_dpdk *offload,
-                                 struct dpdk_offload_thread_item *item,
-                                 unsigned int tid)
+dpdk_append_offload(const struct dpdk_offload *offload,
+                    struct dpdk_offload_thread_item *item, unsigned int tid)
 {
     ovs_assert(offload->offload_threads);
 
@@ -258,28 +254,28 @@ dpif_offload_dpdk_append_offload(const struct 
dpif_offload_dpdk *offload,
 }
 
 static void
-dpif_offload_dpdk_offload_flow_enqueue(struct dpif_offload_dpdk *offload,
-                                       struct dpdk_offload_thread_item *item)
+dpdk_offload_flow_enqueue(struct dpdk_offload *offload,
+                          struct dpdk_offload_thread_item *item)
 {
     struct dpdk_offload_flow_item *flow_offload = &item->data->flow;
     unsigned int tid;
 
     ovs_assert(item->type == DPDK_OFFLOAD_FLOW);
 
-    tid = dpif_offload_dpdk_ufid_to_thread_id(offload, flow_offload->ufid);
-    dpif_offload_dpdk_append_offload(offload, item, tid);
+    tid = dpdk_ufid_to_thread_id(offload, flow_offload->ufid);
+    dpdk_append_offload(offload, item, tid);
 }
 
 static int
-dpif_offload_dpdk_offload_del(struct dpdk_offload_thread *thread,
-                              struct dpdk_offload_thread_item *item)
+dpdk_offload_del(struct dpdk_offload_thread *thread,
+                 struct dpdk_offload_thread_item *item)
 {
     struct dpdk_offload_flow_item *flow = &item->data->flow;
     struct dpif_flow_stats stats;
     struct netdev *netdev;
     int error;
 
-    netdev = dpif_offload_dpdk_get_netdev(thread->offload, flow->in_port);
+    netdev = dpdk_get_netdev(thread->offload, flow->in_port);
 
     if (!netdev) {
         VLOG_DBG("Failed to find netdev for port_id %d", flow->in_port);
@@ -291,11 +287,9 @@ dpif_offload_dpdk_offload_del(struct dpdk_offload_thread 
*thread,
      * the delete request directly to the dpdk netdev offload code, which
      * will handle the actual hardware offloaded flow.  It will only remove it
      * when no other PMD needs it. */
-    error = netdev_offload_dpdk_flow_del(thread->offload, netdev,
-                                         flow->pmd_id, &flow->ufid,
-                                         flow->flow_reference,
-                                         flow->requested_stats ? &stats
-                                                               : NULL);
+    error = dpdk_netdev_flow_del(thread->offload, netdev, flow->pmd_id,
+                                 &flow->ufid, flow->flow_reference,
+                                 flow->requested_stats ? &stats : NULL);
 
 do_callback:
     dpif_offload_datapath_flow_op_continue(&flow->callback,
@@ -308,8 +302,8 @@ do_callback:
 }
 
 static int
-dpif_offload_dpdk_offload_put(struct dpdk_offload_thread *thread,
-                              struct dpdk_offload_thread_item *item)
+dpdk_offload_put(struct dpdk_offload_thread *thread,
+                 struct dpdk_offload_thread_item *item)
 {
     struct dpdk_offload_flow_item *flow = &item->data->flow;
     void *previous_flow_reference = NULL;
@@ -317,7 +311,7 @@ dpif_offload_dpdk_offload_put(struct dpdk_offload_thread 
*thread,
     struct netdev *netdev;
     int error;
 
-    netdev = dpif_offload_dpdk_get_netdev(thread->offload, flow->in_port);
+    netdev = dpdk_get_netdev(thread->offload, flow->in_port);
 
     if (!netdev) {
         VLOG_DBG("Failed to find netdev for port_id %d", flow->in_port);
@@ -325,7 +319,7 @@ dpif_offload_dpdk_offload_put(struct dpdk_offload_thread 
*thread,
         goto do_callback;
     }
 
-    if (!dpif_offload_dpdk_is_offloading_netdev(thread->offload, netdev)) {
+    if (!dpdk_is_offloading_netdev(thread->offload, netdev)) {
         error = EUNATCH;
         goto do_callback;
     }
@@ -334,17 +328,12 @@ dpif_offload_dpdk_offload_put(struct dpdk_offload_thread 
*thread,
      * the put request directly to the dpdk netdev offload code, which
      * will handle the actual hardware offloaded flow.  It will only add it
      * when no other PMD have it offloaded. */
-    error = netdev_offload_dpdk_flow_put(thread->offload, flow->pmd_id,
-                                         flow->flow_reference,
-                                         netdev, &flow->match,
-                                         CONST_CAST(struct nlattr *,
-                                                    flow->actions),
-                                         flow->actions_len, &flow->ufid,
-                                         flow->orig_in_port,
-                                         &previous_flow_reference,
-                                         flow->requested_stats
-                                             ? &stats
-                                             : NULL);
+    error = dpdk_netdev_flow_put(thread->offload, flow->pmd_id,
+                                 flow->flow_reference, netdev, &flow->match,
+                                 CONST_CAST(struct nlattr *, flow->actions),
+                                 flow->actions_len, &flow->ufid,
+                                 flow->orig_in_port, &previous_flow_reference,
+                                 flow->requested_stats ? &stats : NULL);
 do_callback:
     dpif_offload_datapath_flow_op_continue(&flow->callback,
                                            flow->requested_stats ? &stats
@@ -356,8 +345,8 @@ do_callback:
 }
 
 static void
-dpif_offload_dpdk_offload_flow(struct dpdk_offload_thread *thread,
-                               struct dpdk_offload_thread_item *item)
+dpdk_offload_flow(struct dpdk_offload_thread *thread,
+                  struct dpdk_offload_thread_item *item)
 {
     struct dpdk_offload_flow_item *flow_offload = &item->data->flow;
     const char *op;
@@ -366,11 +355,11 @@ dpif_offload_dpdk_offload_flow(struct dpdk_offload_thread 
*thread,
     switch (flow_offload->op) {
     case DPDK_NETDEV_FLOW_OFFLOAD_OP_PUT:
         op = "put";
-        ret = dpif_offload_dpdk_offload_put(thread, item);
+        ret = dpdk_offload_put(thread, item);
         break;
     case DPDK_NETDEV_FLOW_OFFLOAD_OP_DEL:
         op = "delete";
-        ret = dpif_offload_dpdk_offload_del(thread, item);
+        ret = dpdk_offload_del(thread, item);
         break;
     default:
         OVS_NOT_REACHED();
@@ -382,11 +371,11 @@ dpif_offload_dpdk_offload_flow(struct dpdk_offload_thread 
*thread,
 }
 
 static void
-dpif_offload_dpdk_offload_flush(struct dpdk_offload_thread_item *item)
+dpdk_offload_flush(struct dpdk_offload_thread_item *item)
 {
     struct dpdk_offload_flush_item *flush = &item->data->flush;
 
-    netdev_offload_dpdk_flow_flush(flush->offload, flush->netdev);
+    dpdk_netdev_flow_flush(flush->offload, flush->netdev);
     ovs_barrier_block(flush->barrier);
 }
 
@@ -395,7 +384,7 @@ dpif_offload_dpdk_offload_flush(struct 
dpdk_offload_thread_item *item)
 #define DPDK_OFFLOAD_QUIESCE_INTERVAL_US (10 * 1000) /* 10 ms */
 
 static void *
-dpif_offload_dpdk_offload_thread_main(void *arg)
+dpdk_offload_thread_main(void *arg)
 {
     struct dpdk_offload_thread *ofl_thread = arg;
     struct dpdk_offload_thread_item *offload;
@@ -446,10 +435,10 @@ dpif_offload_dpdk_offload_thread_main(void *arg)
 
             switch (offload->type) {
             case DPDK_OFFLOAD_FLOW:
-                dpif_offload_dpdk_offload_flow(ofl_thread, offload);
+                dpdk_offload_flow(ofl_thread, offload);
                 break;
             case DPDK_OFFLOAD_FLUSH:
-                dpif_offload_dpdk_offload_flush(offload);
+                dpdk_offload_flush(offload);
                 break;
             default:
                 OVS_NOT_REACHED();
@@ -460,7 +449,7 @@ dpif_offload_dpdk_offload_thread_main(void *arg)
             mov_avg_cma_update(&ofl_thread->cma, latency_us);
             mov_avg_ema_update(&ofl_thread->ema, latency_us);
 
-            dpif_offload_dpdk_free_offload(offload);
+            dpdk_free_offload(offload);
 
             /* Do RCU synchronization at fixed interval. */
             if (now > next_rcu) {
@@ -479,7 +468,7 @@ exit_thread:
 }
 
 static void
-dpif_offload_dpdk_offload_threads_init(struct dpif_offload_dpdk *offload)
+dpdk_offload_threads_init(struct dpdk_offload *offload)
 {
     offload->offload_threads = xcalloc(offload->offload_thread_count,
                                        sizeof(struct dpdk_offload_thread));
@@ -493,13 +482,13 @@ dpif_offload_dpdk_offload_threads_init(struct 
dpif_offload_dpdk *offload)
         mov_avg_cma_init(&thread->cma);
         mov_avg_ema_init(&thread->ema, 100);
         thread->offload = offload;
-        thread->thread = ovs_thread_create(
-            "dpdk_offload", dpif_offload_dpdk_offload_thread_main, thread);
+        thread->thread = ovs_thread_create("dpdk_offload",
+                                           dpdk_offload_thread_main, thread);
     }
 }
 
 static long long int
-dpif_offload_dpdk_get_timestamp(void)
+dpdk_get_timestamp(void)
 {
     /* XXX: We should look for a better, more efficient way to obtain a
      *  timestamp in the fast path, if only used for gathering statistics. */
@@ -507,12 +496,12 @@ dpif_offload_dpdk_get_timestamp(void)
 }
 
 static void
-dpif_offload_dpdk_flush_enqueue(struct dpif_offload_dpdk *offload,
+dpdk_flush_enqueue(struct dpdk_offload *offload,
                                 struct netdev *netdev,
                                 struct ovs_barrier *barrier)
 {
     unsigned int tid;
-    long long int now_us = dpif_offload_dpdk_get_timestamp();
+    long long int now_us = dpdk_get_timestamp();
 
     if (!dpif_offload_enabled()) {
         return;
@@ -531,7 +520,7 @@ dpif_offload_dpdk_flush_enqueue(struct dpif_offload_dpdk 
*offload,
         flush->offload = offload;
         flush->barrier = barrier;
 
-        dpif_offload_dpdk_append_offload(offload, item, tid);
+        dpdk_append_offload(offload, item, tid);
     }
 }
 
@@ -545,8 +534,7 @@ dpif_offload_dpdk_flush_enqueue(struct dpif_offload_dpdk 
*offload,
  * for the port.  This call must be made blocking until the
  * offload provider completed its job. */
 static void
-dpif_offload_dpdk_flush(struct dpif_offload_dpdk *offload,
-                        struct netdev *netdev)
+dpdk_flush(struct dpdk_offload *offload, struct netdev *netdev)
 {
     /* The flush mutex serves to exclude mutual access to the static
      * barrier, and to prevent multiple flush orders to several threads.
@@ -566,16 +554,16 @@ dpif_offload_dpdk_flush(struct dpif_offload_dpdk *offload,
 
     ovs_barrier_init(&barrier, 1 + offload->offload_thread_count);
 
-    dpif_offload_dpdk_flush_enqueue(offload, netdev, &barrier);
+    dpdk_flush_enqueue(offload, netdev, &barrier);
     ovs_barrier_block(&barrier);
     ovs_barrier_destroy(&barrier);
 
     ovs_mutex_unlock(&flush_mutex);
 }
 
-void dpif_offload_dpdk_traverse_ports(
-    const struct dpif_offload_dpdk *offload,
-    bool (*cb)(struct netdev *, odp_port_t, void *), void *aux)
+void dpdk_traverse_ports(const struct dpdk_offload *offload,
+                         bool (*cb)(struct netdev *, odp_port_t, void *),
+                         void *aux)
 {
     struct dpif_offload_port_mgr_port *port;
 
@@ -587,39 +575,39 @@ void dpif_offload_dpdk_traverse_ports(
 }
 
 static int
-dpif_offload_dpdk_enable_offload(struct dpif_offload *offload_,
-                                 struct dpif_offload_port_mgr_port *port)
+dpdk_enable_offload(struct dpif_offload *offload_,
+                    struct dpif_offload_port_mgr_port *port)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
     struct netdev *netdev = port->netdev;
 
-    netdev_offload_dpdk_init(netdev, offload->offload_thread_count);
+    dpdk_netdev_init(netdev, offload->offload_thread_count);
     dpif_offload_set_netdev_offload(netdev, offload_);
     return 0;
 }
 
 static int
-dpif_offload_dpdk_cleanup_offload(struct dpif_offload *offload_ OVS_UNUSED,
-                                  struct dpif_offload_port_mgr_port *port)
+dpdk_cleanup_offload(struct dpif_offload *offload_ OVS_UNUSED,
+                     struct dpif_offload_port_mgr_port *port)
 {
     struct netdev *netdev = port->netdev;
 
-    netdev_offload_dpdk_uninit(netdev);
+    dpdk_netdev_uninit(netdev);
     dpif_offload_set_netdev_offload(port->netdev, NULL);
     return 0;
 }
 
 static int
-dpif_offload_dpdk_port_add(struct dpif_offload *offload_,
-                           struct netdev *netdev, odp_port_t port_no)
+dpdk_port_add(struct dpif_offload *offload_, struct netdev *netdev,
+              odp_port_t port_no)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
     struct dpif_offload_port_mgr_port *port = xmalloc(sizeof *port);
 
     if (dpif_offload_port_mgr_add(offload->port_mgr, port, netdev,
                                   port_no, false)) {
         if (dpif_offload_enabled()) {
-            return dpif_offload_dpdk_enable_offload(offload_, port);
+            return dpdk_enable_offload(offload_, port);
         }
         return 0;
     }
@@ -629,16 +617,16 @@ dpif_offload_dpdk_port_add(struct dpif_offload *offload_,
 }
 
 static void
-dpif_offload_dpdk_free_port(struct dpif_offload_port_mgr_port *port)
+dpdk_free_port(struct dpif_offload_port_mgr_port *port)
 {
     netdev_close(port->netdev);
     free(port);
 }
 
 static int
-dpif_offload_dpdk_port_del(struct dpif_offload *offload_, odp_port_t port_no)
+dpdk_port_del(struct dpif_offload *offload_, odp_port_t port_no)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
     struct dpif_offload_port_mgr_port *port;
     int ret = 0;
 
@@ -649,51 +637,47 @@ dpif_offload_dpdk_port_del(struct dpif_offload *offload_, 
odp_port_t port_no)
          * all pending flow operations, especially the pending delete ones,
          * before we remove the netdev from the port_mgr list. */
         dpif_offload_set_netdev_offload(port->netdev, NULL);
-        dpif_offload_dpdk_flush(offload, port->netdev);
+        dpdk_flush(offload, port->netdev);
     }
 
     port = dpif_offload_port_mgr_remove(offload->port_mgr, port_no);
     if (port) {
         if (dpif_offload_enabled()) {
-            ret = dpif_offload_dpdk_cleanup_offload(offload_, port);
+            ret = dpdk_cleanup_offload(offload_, port);
         }
-        ovsrcu_postpone(dpif_offload_dpdk_free_port, port);
+        ovsrcu_postpone(dpdk_free_port, port);
     }
     return ret;
 }
 
 static int
-dpif_offload_dpdk_port_dump_start(const struct dpif_offload *offload_,
-                                  void **statep)
+dpdk_port_dump_start(const struct dpif_offload *offload_, void **statep)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
 
     return dpif_offload_port_mgr_port_dump_start(offload->port_mgr, statep);
 }
 
 static int
-dpif_offload_dpdk_port_dump_next(const struct dpif_offload *offload_,
-                                 void *state,
-                                 struct dpif_offload_port *port)
+dpdk_port_dump_next(const struct dpif_offload *offload_, void *state,
+                    struct dpif_offload_port *port)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
 
     return dpif_offload_port_mgr_port_dump_next(offload->port_mgr, state,
                                                 port);
 }
 
 static int
-dpif_offload_dpdk_port_dump_done(const struct dpif_offload *offload_,
-                                 void *state)
+dpdk_port_dump_done(const struct dpif_offload *offload_, void *state)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
 
     return dpif_offload_port_mgr_port_dump_done(offload->port_mgr, state);
 }
 
 struct netdev *
-dpif_offload_dpdk_get_netdev(const struct dpif_offload_dpdk *offload,
-                             odp_port_t port_no)
+dpdk_get_netdev(const struct dpdk_offload *offload, odp_port_t port_no)
 {
     struct dpif_offload_port_mgr_port *port;
 
@@ -707,21 +691,18 @@ dpif_offload_dpdk_get_netdev(const struct 
dpif_offload_dpdk *offload,
 }
 
 static struct netdev *
-dpif_offload_dpdk_get_netdev_(struct dpif_offload *offload_,
-                              odp_port_t port_no)
+dpdk_get_netdev_(struct dpif_offload *offload_, odp_port_t port_no)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
 
-    return dpif_offload_dpdk_get_netdev(offload, port_no);
+    return dpdk_get_netdev(offload, port_no);
 }
 
 static int
-dpif_offload_dpdk_open(const struct dpif_offload_class *offload_class,
-                       struct dpif *dpif, struct dpif_offload **offload_)
+dpdk_open(const struct dpif_offload_class *offload_class, struct dpif *dpif,
+          struct dpif_offload **offload_)
 {
-    struct dpif_offload_dpdk *offload;
-
-    offload = xmalloc(sizeof *offload);
+    struct dpdk_offload *offload = xmalloc(sizeof *offload);
 
     dpif_offload_init(&offload->offload, offload_class, dpif);
     offload->port_mgr = dpif_offload_port_mgr_init();
@@ -738,13 +719,13 @@ dpif_offload_dpdk_open(const struct dpif_offload_class 
*offload_class,
 }
 
 static void
-dpif_offload_dpdk_close(struct dpif_offload *offload_)
+dpdk_close(struct dpif_offload *offload_)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
     struct dpif_offload_port_mgr_port *port;
 
     DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
-        dpif_offload_dpdk_port_del(offload_, port->port_no);
+        dpdk_port_del(offload_, port->port_no);
     }
 
     atomic_store_relaxed(&offload->offload_thread_shutdown, true);
@@ -767,10 +748,9 @@ dpif_offload_dpdk_close(struct dpif_offload *offload_)
 }
 
 static void
-dpif_offload_dpdk_set_config(struct dpif_offload *offload_,
-                             const struct smap *other_cfg)
+dpdk_set_config(struct dpif_offload *offload_, const struct smap *other_cfg)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
 
     if (smap_get_bool(other_cfg, "hw-offload", false)) {
         if (ovsthread_once_start(&offload->once_enable)) {
@@ -791,9 +771,9 @@ dpif_offload_dpdk_set_config(struct dpif_offload *offload_,
 
             offload->offload_thread_count = offload_thread_count;
 
-            dpif_offload_dpdk_offload_threads_init(offload);
+            dpdk_offload_threads_init(offload);
             DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
-                dpif_offload_dpdk_enable_offload(offload_, port);
+                dpdk_enable_offload(offload_, port);
             }
 
             ovsthread_once_done(&offload->once_enable);
@@ -802,10 +782,10 @@ dpif_offload_dpdk_set_config(struct dpif_offload 
*offload_,
 }
 
 static void
-dpif_offload_dpdk_get_debug(const struct dpif_offload *offload_, struct ds *ds,
-                            struct json *json)
+dpdk_get_debug(const struct dpif_offload *offload_, struct ds *ds,
+               struct json *json)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
 
     if (json) {
         struct json *json_ports = json_object_create();
@@ -837,8 +817,8 @@ dpif_offload_dpdk_get_debug(const struct dpif_offload 
*offload_, struct ds *ds,
 }
 
 static bool
-dpif_offload_dpdk_can_offload(struct dpif_offload *offload OVS_UNUSED,
-                              struct netdev *netdev)
+dpdk_can_offload(struct dpif_offload *offload OVS_UNUSED,
+                 struct netdev *netdev)
 {
     if (netdev_vport_is_vport_class(netdev->netdev_class)
         && strcmp(netdev_get_dpif_type(netdev), "netdev")) {
@@ -851,9 +831,9 @@ dpif_offload_dpdk_can_offload(struct dpif_offload *offload 
OVS_UNUSED,
 }
 
 static uint64_t
-dpif_offload_dpdk_flow_count(const struct dpif_offload *offload_)
+dpdk_flow_count(const struct dpif_offload *offload_)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
     struct dpif_offload_port_mgr_port *port;
     uint64_t total = 0;
 
@@ -862,16 +842,15 @@ dpif_offload_dpdk_flow_count(const struct dpif_offload 
*offload_)
     }
 
     DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
-        total += netdev_offload_dpdk_flow_count(port->netdev,
-                                                offload->offload_thread_count);
+        total += dpdk_netdev_flow_count(port->netdev,
+                                        offload->offload_thread_count);
     }
 
     return total;
 }
 
 static uint64_t
-dpif_offload_dpdk_flow_count_by_thread(struct dpif_offload_dpdk *offload,
-                                       unsigned int tid)
+dpdk_flow_count_by_thread(struct dpdk_offload *offload, unsigned int tid)
 {
     struct dpif_offload_port_mgr_port *port;
     uint64_t total = 0;
@@ -881,36 +860,35 @@ dpif_offload_dpdk_flow_count_by_thread(struct 
dpif_offload_dpdk *offload,
     }
 
     DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
-        total += netdev_offload_dpdk_flow_count_by_thread(port->netdev, tid);
+        total += dpdk_netdev_flow_count_by_thread(port->netdev, tid);
     }
 
     return total;
 }
 
 static int
-dpif_offload_dpdk_netdev_hw_post_process(
-    const struct dpif_offload *offload_, struct netdev *netdev,
-    unsigned pmd_id, struct dp_packet *packet, void **flow_reference)
+dpdk_netdev_hw_post_process(const struct dpif_offload *offload_,
+                            struct netdev *netdev, unsigned pmd_id,
+                            struct dp_packet *packet, void **flow_reference)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
 
-    return netdev_offload_dpdk_hw_miss_packet_recover(offload, netdev, pmd_id,
-                                                      packet, flow_reference);
+    return dpdk_netdev_hw_miss_packet_recover(offload, netdev, pmd_id, packet,
+                                              flow_reference);
 }
 
 static int
-dpif_offload_dpdk_netdev_flow_put(const struct dpif_offload *offload_,
-                                  struct netdev *netdev OVS_UNUSED,
-                                  struct dpif_offload_flow_put *put,
-                                  void **previous_flow_reference OVS_UNUSED)
+dpdk_flow_put(const struct dpif_offload *offload_,
+              struct netdev *netdev OVS_UNUSED,
+              struct dpif_offload_flow_put *put,
+              void **previous_flow_reference OVS_UNUSED)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
     struct dpdk_offload_thread_item *item;
     struct dpdk_offload_flow_item *flow_offload;
 
-    item = dpif_offload_dpdk_alloc_flow_offload(
-        DPDK_NETDEV_FLOW_OFFLOAD_OP_PUT);
-    item->timestamp = dpif_offload_dpdk_get_timestamp();
+    item = dpdk_alloc_flow_offload(DPDK_NETDEV_FLOW_OFFLOAD_OP_PUT);
+    item->timestamp = dpdk_get_timestamp();
 
     flow_offload = &item->data->flow;
     flow_offload->in_port = put->in_port;
@@ -925,22 +903,21 @@ dpif_offload_dpdk_netdev_flow_put(const struct 
dpif_offload *offload_,
     flow_offload->requested_stats = !!put->stats;
     flow_offload->callback = put->cb_data;
 
-    dpif_offload_dpdk_offload_flow_enqueue(offload, item);
+    dpdk_offload_flow_enqueue(offload, item);
     return EINPROGRESS;
 }
 
 static int
-dpif_offload_dpdk_netdev_flow_del(const struct dpif_offload *offload_,
-                                  struct netdev *netdev OVS_UNUSED,
-                                  struct dpif_offload_flow_del *del)
+dpdk_flow_del(const struct dpif_offload *offload_,
+              struct netdev *netdev OVS_UNUSED,
+              struct dpif_offload_flow_del *del)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
     struct dpdk_offload_thread_item *item;
     struct dpdk_offload_flow_item *flow_offload;
 
-    item = dpif_offload_dpdk_alloc_flow_offload(
-        DPDK_NETDEV_FLOW_OFFLOAD_OP_DEL);
-    item->timestamp =dpif_offload_dpdk_get_timestamp();
+    item = dpdk_alloc_flow_offload(DPDK_NETDEV_FLOW_OFFLOAD_OP_DEL);
+    item->timestamp =dpdk_get_timestamp();
 
     flow_offload = &item->data->flow;
     flow_offload->in_port = del->in_port;
@@ -950,22 +927,22 @@ dpif_offload_dpdk_netdev_flow_del(const struct 
dpif_offload *offload_,
     flow_offload->pmd_id = del->pmd_id;
     flow_offload->callback = del->cb_data;
 
-    dpif_offload_dpdk_offload_flow_enqueue(offload, item);
+    dpdk_offload_flow_enqueue(offload, item);
     return EINPROGRESS;
 }
 
 static void
-dpif_offload_dpdk_register_flow_unreference_cb(
-    const struct dpif_offload *offload_, dpif_offload_flow_unreference_cb *cb)
+dpdk_register_flow_unreference_cb(const struct dpif_offload *offload_,
+                                  dpif_offload_flow_unreference_cb *cb)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
 
     offload->unreference_cb = cb;
 }
 
 void
-dpif_offload_dpdk_flow_unreference(struct dpif_offload_dpdk *offload,
-                                   unsigned pmd_id, void *flow_reference)
+dpdk_flow_unreference(struct dpdk_offload *offload, unsigned pmd_id,
+                      void *flow_reference)
 {
     if (offload->unreference_cb) {
         offload->unreference_cb(pmd_id, flow_reference);
@@ -973,11 +950,9 @@ dpif_offload_dpdk_flow_unreference(struct 
dpif_offload_dpdk *offload,
 }
 
 static bool
-dpif_offload_dpdk_netdev_flow_stats(const struct dpif_offload *ol OVS_UNUSED,
-                                    struct netdev *netdev,
-                                    const ovs_u128 *ufid,
-                                    struct dpif_flow_stats *stats,
-                                    struct dpif_flow_attrs *attrs)
+dpdk_flow_stats(const struct dpif_offload *ol OVS_UNUSED,
+                struct netdev *netdev, const ovs_u128 *ufid,
+                struct dpif_flow_stats *stats, struct dpif_flow_attrs *attrs)
 {
     uint64_t act_buf[1024 / 8];
     struct nlattr *actions;
@@ -986,15 +961,15 @@ dpif_offload_dpdk_netdev_flow_stats(const struct 
dpif_offload *ol OVS_UNUSED,
 
     ofpbuf_use_stack(&buf, &act_buf, sizeof act_buf);
 
-    return !netdev_offload_dpdk_flow_get(netdev, &match, &actions,
-                                         ufid, stats, attrs, &buf);
+    return !dpdk_netdev_flow_get(netdev, &match, &actions, ufid, stats, attrs,
+                                 &buf);
 }
 
 static int
-dpif_offload_dpdk_get_global_stats(const struct dpif_offload *offload_,
-                                   struct netdev_custom_stats *stats)
+dpdk_get_global_stats(const struct dpif_offload *offload_,
+                      struct netdev_custom_stats *stats)
 {
-    struct dpif_offload_dpdk *offload = dpif_offload_dpdk_cast(offload_);
+    struct dpdk_offload *offload = dpdk_offload_cast(offload_);
     unsigned int nb_thread = offload->offload_thread_count;
     struct dpdk_offload_thread *offload_threads = offload->offload_threads;
     unsigned int tid;
@@ -1044,7 +1019,7 @@ dpif_offload_dpdk_get_global_stats(const struct 
dpif_offload *offload_,
         memset(counts, 0, sizeof counts);
         if (offload_threads != NULL) {
             counts[DP_NETDEV_HW_OFFLOADS_STATS_INSERTED] =
-                dpif_offload_dpdk_flow_count_by_thread(offload, tid);
+                dpdk_flow_count_by_thread(offload, tid);
 
             atomic_read_relaxed(&offload_threads[tid].enqueued_item,
                                 &counts[DP_NETDEV_HW_OFFLOADS_STATS_ENQUEUED]);
@@ -1077,7 +1052,7 @@ dpif_offload_dpdk_get_global_stats(const struct 
dpif_offload *offload_,
 
     /* Get the total offload count. */
     hwol_stats[DP_NETDEV_HW_OFFLOADS_STATS_INSERTED].total =
-        dpif_offload_dpdk_flow_count(offload_);
+        dpdk_flow_count(offload_);
 
     for (i = 0; i < ARRAY_SIZE(hwol_stats); i++) {
         snprintf(stats->counters[i].name, sizeof(stats->counters[i].name),
@@ -1092,23 +1067,22 @@ struct dpif_offload_class dpif_offload_dpdk_class = {
     .type = "dpdk",
     .impl_type = DPIF_OFFLOAD_IMPL_FLOWS_DPIF_SYNCED,
     .supported_dpif_types = (const char *const[]) {"netdev", NULL},
-    .open = dpif_offload_dpdk_open,
-    .close = dpif_offload_dpdk_close,
-    .set_config = dpif_offload_dpdk_set_config,
-    .get_debug = dpif_offload_dpdk_get_debug,
-    .get_global_stats = dpif_offload_dpdk_get_global_stats,
-    .can_offload = dpif_offload_dpdk_can_offload,
-    .port_add = dpif_offload_dpdk_port_add,
-    .port_del = dpif_offload_dpdk_port_del,
-    .port_dump_start = dpif_offload_dpdk_port_dump_start,
-    .port_dump_next = dpif_offload_dpdk_port_dump_next,
-    .port_dump_done = dpif_offload_dpdk_port_dump_done,
-    .flow_count = dpif_offload_dpdk_flow_count,
-    .get_netdev = dpif_offload_dpdk_get_netdev_,
-    .netdev_hw_post_process = dpif_offload_dpdk_netdev_hw_post_process,
-    .netdev_flow_put = dpif_offload_dpdk_netdev_flow_put,
-    .netdev_flow_del = dpif_offload_dpdk_netdev_flow_del,
-    .netdev_flow_stats = dpif_offload_dpdk_netdev_flow_stats,
-    .register_flow_unreference_cb =
-        dpif_offload_dpdk_register_flow_unreference_cb,
+    .open = dpdk_open,
+    .close = dpdk_close,
+    .set_config = dpdk_set_config,
+    .get_debug = dpdk_get_debug,
+    .get_global_stats = dpdk_get_global_stats,
+    .can_offload = dpdk_can_offload,
+    .port_add = dpdk_port_add,
+    .port_del = dpdk_port_del,
+    .port_dump_start = dpdk_port_dump_start,
+    .port_dump_next = dpdk_port_dump_next,
+    .port_dump_done = dpdk_port_dump_done,
+    .flow_count = dpdk_flow_count,
+    .get_netdev = dpdk_get_netdev_,
+    .netdev_hw_post_process = dpdk_netdev_hw_post_process,
+    .netdev_flow_put = dpdk_flow_put,
+    .netdev_flow_del = dpdk_flow_del,
+    .netdev_flow_stats = dpdk_flow_stats,
+    .register_flow_unreference_cb = dpdk_register_flow_unreference_cb,
 };
diff --git a/lib/dpif-offload-dummy.c b/lib/dpif-offload-dummy.c
index 519aad56e..b0e55e050 100644
--- a/lib/dpif-offload-dummy.c
+++ b/lib/dpif-offload-dummy.c
@@ -49,7 +49,7 @@ struct dummy_offloaded_flow {
     struct hmap pmd_id_map;
  };
 
-struct dpif_offload_dummy {
+struct dummy_offload {
     struct dpif_offload offload;
     struct dpif_offload_port_mgr *port_mgr;
     struct id_fpool *flow_mark_pool;
@@ -59,30 +59,29 @@ struct dpif_offload_dummy {
     struct ovsthread_once once_enable; /* Track first-time enablement. */
 };
 
-struct dpif_offload_dummy_port {
+struct dummy_offload_port {
     struct dpif_offload_port_mgr_port pm_port;
 
     struct ovs_mutex port_mutex; /* Protect all below members. */
     struct hmap offloaded_flows OVS_GUARDED;
 };
 
-static void dpif_offload_dummy_flow_unreference(struct dpif_offload_dummy *,
-                                                unsigned pmd_id,
-                                                void *flow_reference);
+static void dummy_flow_unreference(struct dummy_offload *, unsigned pmd_id,
+                                   void *flow_reference);
 
 static uint32_t
-dpif_offload_dummy_allocate_flow_mark(struct dpif_offload_dummy *offload_dummy)
+dummy_allocate_flow_mark(struct dummy_offload *offload)
 {
     static struct ovsthread_once init_once = OVSTHREAD_ONCE_INITIALIZER;
     uint32_t flow_mark;
 
     if (ovsthread_once_start(&init_once)) {
         /* Haven't initiated yet, do it here. */
-        offload_dummy->flow_mark_pool = id_fpool_create(1, 1, UINT32_MAX - 1);
+        offload->flow_mark_pool = id_fpool_create(1, 1, UINT32_MAX - 1);
         ovsthread_once_done(&init_once);
     }
 
-    if (id_fpool_new_id(offload_dummy->flow_mark_pool, 0, &flow_mark)) {
+    if (id_fpool_new_id(offload->flow_mark_pool, 0, &flow_mark)) {
         return flow_mark;
     }
 
@@ -90,36 +89,35 @@ dpif_offload_dummy_allocate_flow_mark(struct 
dpif_offload_dummy *offload_dummy)
 }
 
 static void
-dpif_offload_dummy_free_flow_mark(struct dpif_offload_dummy *offload_dummy,
-                                  uint32_t flow_mark)
+dummy_free_flow_mark(struct dummy_offload *offload, uint32_t flow_mark)
 {
     if (flow_mark != INVALID_FLOW_MARK) {
-        id_fpool_free_id(offload_dummy->flow_mark_pool, 0, flow_mark);
+        id_fpool_free_id(offload->flow_mark_pool, 0, flow_mark);
     }
 }
 
-static struct dpif_offload_dummy_port *
-dpif_offload_dummy_cast_port(struct dpif_offload_port_mgr_port *port)
+static struct dummy_offload_port *
+dummy_offload_port_cast(struct dpif_offload_port_mgr_port *port)
 {
-    return CONTAINER_OF(port, struct dpif_offload_dummy_port, pm_port);
+    return CONTAINER_OF(port, struct dummy_offload_port, pm_port);
 }
 
-static struct dpif_offload_dummy *
-dpif_offload_dummy_cast(const struct dpif_offload *offload)
+static struct dummy_offload *
+dummy_offload_cast(const struct dpif_offload *offload)
 {
-    return CONTAINER_OF(offload, struct dpif_offload_dummy, offload);
+    return CONTAINER_OF(offload, struct dummy_offload, offload);
 }
 
 static uint32_t
-dpif_offload_dummy_flow_hash(const ovs_u128 *ufid)
+dummy_flow_hash(const ovs_u128 *ufid)
 {
     return ufid->u32[0];
 }
 
 static struct pmd_id_data *
-dpif_offload_dummy_find_flow_pmd_data(
-    struct dpif_offload_dummy_port *port OVS_UNUSED,
-    struct dummy_offloaded_flow *off_flow, unsigned pmd_id)
+dummy_find_flow_pmd_data(struct dummy_offload_port *port OVS_UNUSED,
+                         struct dummy_offloaded_flow *off_flow,
+                         unsigned pmd_id)
     OVS_REQUIRES(port->port_mutex)
 {
     size_t hash = hash_int(pmd_id, 0);
@@ -134,10 +132,9 @@ dpif_offload_dummy_find_flow_pmd_data(
 }
 
 static void
-dpif_offload_dummy_add_flow_pmd_data(
-    struct dpif_offload_dummy_port *port OVS_UNUSED,
-    struct dummy_offloaded_flow *off_flow, unsigned pmd_id,
-    void *flow_reference)
+dummy_add_flow_pmd_data(struct dummy_offload_port *port OVS_UNUSED,
+                        struct dummy_offloaded_flow *off_flow, unsigned pmd_id,
+                        void *flow_reference)
     OVS_REQUIRES(port->port_mutex)
 {
     struct pmd_id_data *pmd_data = xmalloc(sizeof *pmd_data);
@@ -149,31 +146,28 @@ dpif_offload_dummy_add_flow_pmd_data(
 }
 
 static void
-dpif_offload_dummy_update_flow_pmd_data(
-    struct dpif_offload_dummy_port *port,
-    struct dummy_offloaded_flow *off_flow, unsigned pmd_id,
-    void *flow_reference, void **previous_flow_reference)
+dummy_update_flow_pmd_data(struct dummy_offload_port *port,
+                           struct dummy_offloaded_flow *off_flow,
+                           unsigned pmd_id, void *flow_reference,
+                           void **previous_flow_reference)
     OVS_REQUIRES(port->port_mutex)
 {
-    struct pmd_id_data *data = dpif_offload_dummy_find_flow_pmd_data(port,
-                                                                     off_flow,
-                                                                     pmd_id);
+    struct pmd_id_data *data = dummy_find_flow_pmd_data(port, off_flow,
+                                                        pmd_id);
 
     if (data) {
         *previous_flow_reference = data->flow_reference;
         data->flow_reference = flow_reference;
     } else {
-        dpif_offload_dummy_add_flow_pmd_data(port, off_flow, pmd_id,
-                                             flow_reference);
+        dummy_add_flow_pmd_data(port, off_flow, pmd_id, flow_reference);
         *previous_flow_reference = NULL;
     }
 }
 
 static bool
-dpif_offload_dummy_del_flow_pmd_data(
-    struct dpif_offload_dummy_port *port OVS_UNUSED,
-    struct dummy_offloaded_flow *off_flow, unsigned pmd_id,
-    void *flow_reference)
+dummy_del_flow_pmd_data(struct dummy_offload_port *port OVS_UNUSED,
+                        struct dummy_offloaded_flow *off_flow, unsigned pmd_id,
+                        void *flow_reference)
     OVS_REQUIRES(port->port_mutex)
 {
     size_t hash = hash_int(pmd_id, 0);
@@ -191,10 +185,9 @@ dpif_offload_dummy_del_flow_pmd_data(
 }
 
 static void
-dpif_offload_dummy_cleanup_flow_pmd_data(
-    struct dpif_offload_dummy *offload,
-    struct dpif_offload_dummy_port *port OVS_UNUSED,
-    struct dummy_offloaded_flow *off_flow)
+dummy_cleanup_flow_pmd_data(struct dummy_offload *offload,
+                            struct dummy_offload_port *port OVS_UNUSED,
+                            struct dummy_offloaded_flow *off_flow)
     OVS_REQUIRES(port->port_mutex)
 {
     struct pmd_id_data *data;
@@ -202,16 +195,14 @@ dpif_offload_dummy_cleanup_flow_pmd_data(
     HMAP_FOR_EACH_SAFE (data, node, &off_flow->pmd_id_map) {
         hmap_remove(&off_flow->pmd_id_map, &data->node);
 
-        dpif_offload_dummy_flow_unreference(offload, data->pmd_id,
-                                            data->flow_reference);
+        dummy_flow_unreference(offload, data->pmd_id, data->flow_reference);
         free(data);
     }
 }
 
 static struct dummy_offloaded_flow *
-dpif_offload_dummy_add_flow(struct dpif_offload_dummy_port *port,
-                            const ovs_u128 *ufid, unsigned pmd_id,
-                            void *flow_reference, uint32_t mark)
+dummy_add_flow(struct dummy_offload_port *port, const ovs_u128 *ufid,
+               unsigned pmd_id, void *flow_reference, uint32_t mark)
     OVS_REQUIRES(port->port_mutex)
 {
     struct dummy_offloaded_flow *off_flow = xzalloc(sizeof *off_flow);
@@ -219,19 +210,17 @@ dpif_offload_dummy_add_flow(struct 
dpif_offload_dummy_port *port,
     off_flow->mark = mark;
     memcpy(&off_flow->ufid, ufid, sizeof off_flow->ufid);
     hmap_init(&off_flow->pmd_id_map);
-    dpif_offload_dummy_add_flow_pmd_data(port, off_flow, pmd_id,
-                                         flow_reference);
+    dummy_add_flow_pmd_data(port, off_flow, pmd_id, flow_reference);
 
     hmap_insert(&port->offloaded_flows, &off_flow->node,
-                dpif_offload_dummy_flow_hash(ufid));
+                dummy_flow_hash(ufid));
 
     return off_flow;
 }
 
 static void
-dpif_offload_dummy_free_flow(struct dpif_offload_dummy_port *port,
-                             struct dummy_offloaded_flow *off_flow,
-                             bool remove_from_port)
+dummy_free_flow(struct dummy_offload_port *port,
+                struct dummy_offloaded_flow *off_flow, bool remove_from_port)
     OVS_REQUIRES(port->port_mutex)
 {
     if (remove_from_port) {
@@ -244,11 +233,11 @@ dpif_offload_dummy_free_flow(struct 
dpif_offload_dummy_port *port,
 }
 
 static struct dummy_offloaded_flow *
-dpif_offload_dummy_find_offloaded_flow(struct dpif_offload_dummy_port *port,
-                                       const ovs_u128 *ufid)
+dummy_find_offloaded_flow(struct dummy_offload_port *port,
+                          const ovs_u128 *ufid)
     OVS_REQUIRES(port->port_mutex)
 {
-    uint32_t hash = dpif_offload_dummy_flow_hash(ufid);
+    uint32_t hash = dummy_flow_hash(ufid);
     struct dummy_offloaded_flow *data;
 
     HMAP_FOR_EACH_WITH_HASH (data, node, hash, &port->offloaded_flows) {
@@ -261,28 +250,28 @@ dpif_offload_dummy_find_offloaded_flow(struct 
dpif_offload_dummy_port *port,
 }
 
 static struct dummy_offloaded_flow *
-dpif_offload_dummy_find_offloaded_flow_and_update(
-    struct dpif_offload_dummy_port *port, const ovs_u128 *ufid,
-    unsigned pmd_id, void *new_flow_reference, void **previous_flow_reference)
+dummy_find_offloaded_flow_and_update(struct dummy_offload_port *port,
+                                     const ovs_u128 *ufid, unsigned pmd_id,
+                                     void *new_flow_reference,
+                                     void **previous_flow_reference)
     OVS_REQUIRES(port->port_mutex)
 {
     struct dummy_offloaded_flow *off_flow;
 
-    off_flow = dpif_offload_dummy_find_offloaded_flow(port, ufid);
+    off_flow = dummy_find_offloaded_flow(port, ufid);
     if (!off_flow) {
         return NULL;
     }
 
-    dpif_offload_dummy_update_flow_pmd_data(port, off_flow, pmd_id,
-                                            new_flow_reference,
-                                            previous_flow_reference);
+    dummy_update_flow_pmd_data(port, off_flow, pmd_id, new_flow_reference,
+                               previous_flow_reference);
 
     return off_flow;
 }
 
 static void
-dpif_offload_dummy_enable_offload(struct dpif_offload *dpif_offload,
-                                  struct dpif_offload_port_mgr_port *port)
+dummy_enable_offload(struct dpif_offload *dpif_offload,
+                     struct dpif_offload_port_mgr_port *port)
 {
     atomic_store_relaxed(&port->netdev->hw_info.post_process_api_supported,
                          true);
@@ -290,22 +279,21 @@ dpif_offload_dummy_enable_offload(struct dpif_offload 
*dpif_offload,
 }
 
 static void
-dpif_offload_dummy_cleanup_offload(struct dpif_offload_port_mgr_port *port)
+dummy_cleanup_offload(struct dpif_offload_port_mgr_port *port)
 {
     dpif_offload_set_netdev_offload(port->netdev, NULL);
 }
 
 static void
-dpif_offload_dummy_free_port__(struct dpif_offload_dummy *offload,
-                               struct dpif_offload_dummy_port *port,
-                               bool close_netdev)
+dummy_free_port__(struct dummy_offload *offload,
+                  struct dummy_offload_port *port, bool close_netdev)
 {
     struct dummy_offloaded_flow *off_flow;
 
     ovs_mutex_lock(&port->port_mutex);
     HMAP_FOR_EACH_POP (off_flow, node, &port->offloaded_flows) {
-        dpif_offload_dummy_cleanup_flow_pmd_data(offload, port, off_flow);
-        dpif_offload_dummy_free_flow(port, off_flow, false);
+        dummy_cleanup_flow_pmd_data(offload, port, off_flow);
+        dummy_free_flow(port, off_flow, false);
     }
     hmap_destroy(&port->offloaded_flows);
     ovs_mutex_unlock(&port->port_mutex);
@@ -317,116 +305,104 @@ dpif_offload_dummy_free_port__(struct 
dpif_offload_dummy *offload,
 }
 
 struct free_port_rcu {
-    struct dpif_offload_dummy *offload;
-    struct dpif_offload_dummy_port *port;
+    struct dummy_offload *offload;
+    struct dummy_offload_port *port;
 };
 
 static void
-dpif_offload_dummy_free_port_rcu(struct free_port_rcu *fpc)
+dummy_free_port_rcu(struct free_port_rcu *fpc)
 {
-    dpif_offload_dummy_free_port__(fpc->offload, fpc->port, true);
+    dummy_free_port__(fpc->offload, fpc->port, true);
     free(fpc);
 }
 
 static void
-dpif_offload_dummy_free_port(struct dpif_offload_dummy *offload,
-                             struct dpif_offload_dummy_port *port)
+dummy_free_port(struct dummy_offload *offload, struct dummy_offload_port *port)
 {
     struct free_port_rcu *fpc = xmalloc(sizeof *fpc);
 
     fpc->offload = offload;
     fpc->port = port;
-    ovsrcu_postpone(dpif_offload_dummy_free_port_rcu, fpc);
+    ovsrcu_postpone(dummy_free_port_rcu, fpc);
 }
 
 static int
-dpif_offload_dummy_port_add(struct dpif_offload *dpif_offload,
-                            struct netdev *netdev, odp_port_t port_no)
+dummy_port_add(struct dpif_offload *dpif_offload, struct netdev *netdev,
+               odp_port_t port_no)
 {
-    struct dpif_offload_dummy_port *port = xmalloc(sizeof *port);
-    struct dpif_offload_dummy *offload_dummy;
+    struct dummy_offload *offload = dummy_offload_cast(dpif_offload);
+    struct dummy_offload_port *port = xmalloc(sizeof *port);
 
     ovs_mutex_init(&port->port_mutex);
     ovs_mutex_lock(&port->port_mutex);
     hmap_init(&port->offloaded_flows);
     ovs_mutex_unlock(&port->port_mutex);
 
-    offload_dummy = dpif_offload_dummy_cast(dpif_offload);
-    if (dpif_offload_port_mgr_add(offload_dummy->port_mgr, &port->pm_port,
+    if (dpif_offload_port_mgr_add(offload->port_mgr, &port->pm_port,
                                   netdev, port_no, false)) {
 
         if (dpif_offload_enabled()) {
-            dpif_offload_dummy_enable_offload(dpif_offload, &port->pm_port);
+            dummy_enable_offload(dpif_offload, &port->pm_port);
         }
         return 0;
     }
 
-    dpif_offload_dummy_free_port__(offload_dummy, port, false);
+    dummy_free_port__(offload, port, false);
     return EEXIST;
 }
 
 static int
-dpif_offload_dummy_port_del(struct dpif_offload *dpif_offload,
-                            odp_port_t port_no)
+dummy_port_del(struct dpif_offload *dpif_offload, odp_port_t port_no)
 {
-    struct dpif_offload_dummy *offload_dummy;
+    struct dummy_offload *offload = dummy_offload_cast(dpif_offload);
     struct dpif_offload_port_mgr_port *port;
 
-    offload_dummy = dpif_offload_dummy_cast(dpif_offload);
-
-    port = dpif_offload_port_mgr_remove(offload_dummy->port_mgr, port_no);
+    port = dpif_offload_port_mgr_remove(offload->port_mgr, port_no);
     if (port) {
-        struct dpif_offload_dummy_port *dummy_port;
+        struct dummy_offload_port *dummy_port;
 
-        dummy_port = dpif_offload_dummy_cast_port(port);
+        dummy_port = dummy_offload_port_cast(port);
         if (dpif_offload_enabled()) {
-            dpif_offload_dummy_cleanup_offload(port);
+            dummy_cleanup_offload(port);
         }
-        dpif_offload_dummy_free_port(offload_dummy, dummy_port);
+        dummy_free_port(offload, dummy_port);
     }
     return 0;
 }
 
 static int
-dpif_offload_dummy_port_dump_start(const struct dpif_offload *offload_,
-                                      void **statep)
+dummy_port_dump_start(const struct dpif_offload *offload_, void **statep)
 {
-    struct dpif_offload_dummy *offload = dpif_offload_dummy_cast(offload_);
+    struct dummy_offload *offload = dummy_offload_cast(offload_);
 
     return dpif_offload_port_mgr_port_dump_start(offload->port_mgr, statep);
 }
 
 static int
-dpif_offload_dummy_port_dump_next(const struct dpif_offload *offload_,
-                                  void *state,
-                                  struct dpif_offload_port *port)
+dummy_port_dump_next(const struct dpif_offload *offload_, void *state,
+                     struct dpif_offload_port *port)
 {
-    struct dpif_offload_dummy *offload = dpif_offload_dummy_cast(offload_);
+    struct dummy_offload *offload = dummy_offload_cast(offload_);
 
     return dpif_offload_port_mgr_port_dump_next(offload->port_mgr, state,
                                                 port);
 }
 
 static int
-dpif_offload_dummy_port_dump_done(const struct dpif_offload *offload_,
-                                  void *state)
+dummy_port_dump_done(const struct dpif_offload *offload_, void *state)
 {
-    struct dpif_offload_dummy *offload = dpif_offload_dummy_cast(offload_);
+    struct dummy_offload *offload = dummy_offload_cast(offload_);
 
     return dpif_offload_port_mgr_port_dump_done(offload->port_mgr, state);
 }
 
 static struct netdev *
-dpif_offload_dummy_get_netdev(struct dpif_offload *dpif_offload,
-                              odp_port_t port_no)
+dummy_get_netdev(struct dpif_offload *dpif_offload, odp_port_t port_no)
 {
-    struct dpif_offload_dummy *offload_dummy;
+    struct dummy_offload *offload = dummy_offload_cast(dpif_offload);
     struct dpif_offload_port_mgr_port *port;
 
-    offload_dummy = dpif_offload_dummy_cast(dpif_offload);
-
-    port = dpif_offload_port_mgr_find_by_odp_port(offload_dummy->port_mgr,
-                                                  port_no);
+    port = dpif_offload_port_mgr_find_by_odp_port(offload->port_mgr, port_no);
     if (!port) {
         return NULL;
     }
@@ -435,82 +411,74 @@ dpif_offload_dummy_get_netdev(struct dpif_offload 
*dpif_offload,
 }
 
 static int
-dpif_offload_dummy_open(const struct dpif_offload_class *offload_class,
-                        struct dpif *dpif, struct dpif_offload **dpif_offload)
+dummy_open(const struct dpif_offload_class *offload_class, struct dpif *dpif,
+           struct dpif_offload **dpif_offload)
 {
-    struct dpif_offload_dummy *offload_dummy;
+    struct dummy_offload *offload;
 
-    offload_dummy = xmalloc(sizeof *offload_dummy);
+    offload = xmalloc(sizeof *offload);
 
-    dpif_offload_init(&offload_dummy->offload, offload_class, dpif);
-    offload_dummy->port_mgr = dpif_offload_port_mgr_init();
-    offload_dummy->once_enable =
-        (struct ovsthread_once) OVSTHREAD_ONCE_INITIALIZER;
-    offload_dummy->flow_mark_pool = NULL;
-    offload_dummy->unreference_cb = NULL;
+    dpif_offload_init(&offload->offload, offload_class, dpif);
+    offload->port_mgr = dpif_offload_port_mgr_init();
+    offload->once_enable = (struct ovsthread_once) OVSTHREAD_ONCE_INITIALIZER;
+    offload->flow_mark_pool = NULL;
+    offload->unreference_cb = NULL;
 
-    *dpif_offload = &offload_dummy->offload;
+    *dpif_offload = &offload->offload;
     return 0;
 }
 
 static void
-dpif_offload_dummy_close(struct dpif_offload *dpif_offload)
+dummy_close(struct dpif_offload *dpif_offload)
 {
-    struct dpif_offload_dummy *offload_dummy;
-
-    offload_dummy = dpif_offload_dummy_cast(dpif_offload);
+    struct dummy_offload *offload = dummy_offload_cast(dpif_offload);
 
     /* The ofproto layer may not call dpif_port_del() for all ports,
      * especially internal ones, so we need to clean up any remaining ports. */
     struct dpif_offload_port_mgr_port *port;
 
-    DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload_dummy->port_mgr) {
-        dpif_offload_dummy_port_del(dpif_offload, port->port_no);
+    DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
+        dummy_port_del(dpif_offload, port->port_no);
     }
 
-    dpif_offload_port_mgr_uninit(offload_dummy->port_mgr);
-    if (offload_dummy->flow_mark_pool) {
-        id_fpool_destroy(offload_dummy->flow_mark_pool);
+    dpif_offload_port_mgr_uninit(offload->port_mgr);
+    if (offload->flow_mark_pool) {
+        id_fpool_destroy(offload->flow_mark_pool);
     }
-    ovsthread_once_destroy(&offload_dummy->once_enable);
-    free(offload_dummy);
+    ovsthread_once_destroy(&offload->once_enable);
+    free(offload);
 }
 
 static void
-dpif_offload_dummy_set_config(struct dpif_offload *dpif_offload,
-                              const struct smap *other_cfg)
+dummy_set_config(struct dpif_offload *dpif_offload,
+                 const struct smap *other_cfg)
 {
-    struct dpif_offload_dummy *offload_dummy;
-
-    offload_dummy = dpif_offload_dummy_cast(dpif_offload);
+    struct dummy_offload *offload = dummy_offload_cast(dpif_offload);
 
     if (smap_get_bool(other_cfg, "hw-offload", false)) {
-        if (ovsthread_once_start(&offload_dummy->once_enable)) {
+        if (ovsthread_once_start(&offload->once_enable)) {
             struct dpif_offload_port_mgr_port *port;
 
-            DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port,
-                                                 offload_dummy->port_mgr) {
-                dpif_offload_dummy_enable_offload(dpif_offload, port);
+            DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
+                dummy_enable_offload(dpif_offload, port);
             }
 
-            ovsthread_once_done(&offload_dummy->once_enable);
+            ovsthread_once_done(&offload->once_enable);
         }
     }
 }
 
 static void
-dpif_offload_dummy_get_debug(const struct dpif_offload *offload, struct ds *ds,
-                             struct json *json)
+dummy_get_debug(const struct dpif_offload *offload_, struct ds *ds,
+                struct json *json)
 {
-    struct dpif_offload_dummy *offload_dummy;
-
-    offload_dummy = dpif_offload_dummy_cast(offload);
+    struct dummy_offload *offload = dummy_offload_cast(offload_);
 
     if (json) {
         struct json *json_ports = json_object_create();
         struct dpif_offload_port_mgr_port *port;
 
-        DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload_dummy->port_mgr) {
+        DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
             struct json *json_port = json_object_create();
 
             json_object_put(json_port, "port_no",
@@ -528,7 +496,7 @@ dpif_offload_dummy_get_debug(const struct dpif_offload 
*offload, struct ds *ds,
     } else if (ds) {
         struct dpif_offload_port_mgr_port *port;
 
-        DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload_dummy->port_mgr) {
+        DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
             ds_put_format(ds, "  - %s: port_no: %u\n",
                           netdev_get_name(port->netdev), port->port_no);
         }
@@ -536,10 +504,10 @@ dpif_offload_dummy_get_debug(const struct dpif_offload 
*offload, struct ds *ds,
 }
 
 static int
-dpif_offload_dummy_get_global_stats(const struct dpif_offload *offload_,
-                                    struct netdev_custom_stats *stats)
+dummy_get_global_stats(const struct dpif_offload *offload_,
+                       struct netdev_custom_stats *stats)
 {
-    struct dpif_offload_dummy *offload = dpif_offload_dummy_cast(offload_);
+    struct dummy_offload *offload = dummy_offload_cast(offload_);
 
     /* Add a single counter telling how many ports we are servicing. */
     stats->label = xstrdup(dpif_offload_name(offload_));
@@ -554,46 +522,45 @@ dpif_offload_dummy_get_global_stats(const struct 
dpif_offload *offload_,
 }
 
 static bool
-dpif_offload_dummy_can_offload(struct dpif_offload *dpif_offload OVS_UNUSED,
-                               struct netdev *netdev)
+dummy_can_offload(struct dpif_offload *dpif_offload OVS_UNUSED,
+                  struct netdev *netdev)
 {
     return is_dummy_netdev_class(netdev->netdev_class);
 }
 
 static void
-dpif_offload_dummy_log_operation(const char *op, int error,
-                                 const ovs_u128 *ufid)
+dummy_log_operation(const char *op, int error, const ovs_u128 *ufid)
 {
     VLOG_DBG("%s to %s netdev flow "UUID_FMT,
              error == 0 ? "succeed" : "failed", op,
              UUID_ARGS((struct uuid *) ufid));
 }
 
-static struct dpif_offload_dummy_port *
-dpif_offload_dummy_get_port_by_netdev(const struct dpif_offload *offload_,
-                                      struct netdev *netdev)
+static struct dummy_offload_port *
+dummy_get_port_by_netdev(const struct dpif_offload *offload_,
+                         struct netdev *netdev)
 {
-    struct dpif_offload_dummy *offload = dpif_offload_dummy_cast(offload_);
+    struct dummy_offload *offload = dummy_offload_cast(offload_);
     struct dpif_offload_port_mgr_port *port;
 
     port = dpif_offload_port_mgr_find_by_netdev(offload->port_mgr, netdev);
     if (!port) {
         return NULL;
     }
-    return dpif_offload_dummy_cast_port(port);
+    return dummy_offload_port_cast(port);
 }
 
 static int
-dpif_offload_dummy_netdev_hw_post_process(
-    const struct dpif_offload *offload_, struct netdev *netdev,
-    unsigned pmd_id, struct dp_packet *packet, void **flow_reference_)
+dummy_netdev_hw_post_process(const struct dpif_offload *offload_,
+                             struct netdev *netdev, unsigned pmd_id,
+                             struct dp_packet *packet, void **flow_reference_)
 {
     struct dummy_offloaded_flow *off_flow;
-    struct dpif_offload_dummy_port *port;
+    struct dummy_offload_port *port;
     void *flow_reference = NULL;
     uint32_t flow_mark;
 
-    port = dpif_offload_dummy_get_port_by_netdev(offload_, netdev);
+    port = dummy_get_port_by_netdev(offload_, netdev);
     if (!port || !dp_packet_has_flow_mark(packet, &flow_mark)) {
         *flow_reference_ = NULL;
         return 0;
@@ -604,8 +571,7 @@ dpif_offload_dummy_netdev_hw_post_process(
         struct pmd_id_data *pmd_data;
 
         if (flow_mark == off_flow->mark) {
-            pmd_data = dpif_offload_dummy_find_flow_pmd_data(port, off_flow,
-                                                             pmd_id);
+            pmd_data = dummy_find_flow_pmd_data(port, off_flow, pmd_id);
             if (pmd_data) {
                 flow_reference = pmd_data->flow_reference;
             }
@@ -619,18 +585,17 @@ dpif_offload_dummy_netdev_hw_post_process(
 }
 
 static int
-dpif_offload_dummy_netdev_flow_put(const struct dpif_offload *offload_,
-                                   struct netdev *netdev,
-                                   struct dpif_offload_flow_put *put,
-                                   void **previous_flow_reference)
+dummy_netdev_flow_put(const struct dpif_offload *offload_,
+                      struct netdev *netdev, struct dpif_offload_flow_put *put,
+                      void **previous_flow_reference)
 {
-    struct dpif_offload_dummy *offload = dpif_offload_dummy_cast(offload_);
+    struct dummy_offload *offload = dummy_offload_cast(offload_);
     struct dummy_offloaded_flow *off_flow;
-    struct dpif_offload_dummy_port *port;
+    struct dummy_offload_port *port;
     bool modify = true;
     int error = 0;
 
-    port = dpif_offload_dummy_get_port_by_netdev(offload_, netdev);
+    port = dummy_get_port_by_netdev(offload_, netdev);
     if (!port) {
         error = ENODEV;
         goto exit;
@@ -638,21 +603,21 @@ dpif_offload_dummy_netdev_flow_put(const struct 
dpif_offload *offload_,
 
     ovs_mutex_lock(&port->port_mutex);
 
-    off_flow = dpif_offload_dummy_find_offloaded_flow_and_update(
+    off_flow = dummy_find_offloaded_flow_and_update(
         port, put->ufid, put->pmd_id, put->flow_reference,
         previous_flow_reference);
 
     if (!off_flow) {
         /* Create new offloaded flow. */
-        uint32_t mark = dpif_offload_dummy_allocate_flow_mark(offload);
+        uint32_t mark = dummy_allocate_flow_mark(offload);
 
         if (mark == INVALID_FLOW_MARK) {
             error = ENOSPC;
             goto exit_unlock;
         }
 
-        off_flow = dpif_offload_dummy_add_flow(port, put->ufid, put->pmd_id,
-                                               put->flow_reference, mark);
+        off_flow = dummy_add_flow(port, put->ufid, put->pmd_id,
+                                  put->flow_reference, mark);
         modify = false;
         *previous_flow_reference = NULL;
     }
@@ -686,23 +651,21 @@ exit:
         memset(put->stats, 0, sizeof *put->stats);
     }
 
-    dpif_offload_dummy_log_operation(modify ? "modify" : "add", error,
-                                     put->ufid);
+    dummy_log_operation(modify ? "modify" : "add", error, put->ufid);
     return error;
 }
 
 static int
-dpif_offload_dummy_netdev_flow_del(const struct dpif_offload *offload_,
-                                   struct netdev *netdev,
-                                   struct dpif_offload_flow_del *del)
+dummy_netdev_flow_del(const struct dpif_offload *offload_,
+                      struct netdev *netdev, struct dpif_offload_flow_del *del)
 {
-    struct dpif_offload_dummy *offload = dpif_offload_dummy_cast(offload_);
+    struct dummy_offload *offload = dummy_offload_cast(offload_);
     struct dummy_offloaded_flow *off_flow;
-    struct dpif_offload_dummy_port *port;
+    struct dummy_offload_port *port;
     uint32_t mark = INVALID_FLOW_MARK;
     const char *error = NULL;
 
-    port = dpif_offload_dummy_get_port_by_netdev(offload_, netdev);
+    port = dummy_get_port_by_netdev(offload_, netdev);
     if (!port) {
         error = "No such (net)device.";
         goto exit;
@@ -710,22 +673,22 @@ dpif_offload_dummy_netdev_flow_del(const struct 
dpif_offload *offload_,
 
     ovs_mutex_lock(&port->port_mutex);
 
-    off_flow = dpif_offload_dummy_find_offloaded_flow(port, del->ufid);
+    off_flow = dummy_find_offloaded_flow(port, del->ufid);
     if (!off_flow) {
         error = "No such flow.";
         goto exit_unlock;
     }
 
-    if (!dpif_offload_dummy_del_flow_pmd_data(port, off_flow, del->pmd_id,
-                                              del->flow_reference)) {
+    if (!dummy_del_flow_pmd_data(port, off_flow, del->pmd_id,
+                                 del->flow_reference)) {
         error = "No such flow with pmd_id and reference.";
         goto exit_unlock;
     }
 
     mark = off_flow->mark;
     if (!hmap_count(&off_flow->pmd_id_map)) {
-        dpif_offload_dummy_free_flow_mark(offload, mark);
-        dpif_offload_dummy_free_flow(port, off_flow, true);
+        dummy_free_flow_mark(offload, mark);
+        dummy_free_flow(port, off_flow, true);
     }
 
 exit_unlock:
@@ -754,27 +717,26 @@ exit:
         memset(del->stats, 0, sizeof *del->stats);
     }
 
-    dpif_offload_dummy_log_operation("delete", error ? -1 : 0, del->ufid);
+    dummy_log_operation("delete", error ? -1 : 0, del->ufid);
     return error ? ENOENT : 0;
 }
 
 static bool
-dpif_offload_dummy_netdev_flow_stats(const struct dpif_offload *offload_,
-                                     struct netdev *netdev,
-                                     const ovs_u128 *ufid,
-                                     struct dpif_flow_stats *stats,
-                                     struct dpif_flow_attrs *attrs)
+dummy_netdev_flow_stats(const struct dpif_offload *offload_,
+                        struct netdev *netdev, const ovs_u128 *ufid,
+                        struct dpif_flow_stats *stats,
+                        struct dpif_flow_attrs *attrs)
 {
     struct dummy_offloaded_flow *off_flow = NULL;
-    struct dpif_offload_dummy_port *port;
+    struct dummy_offload_port *port;
 
-    port = dpif_offload_dummy_get_port_by_netdev(offload_, netdev);
+    port = dummy_get_port_by_netdev(offload_, netdev);
     if (!port) {
         return false;
     }
 
     ovs_mutex_lock(&port->port_mutex);
-    off_flow = dpif_offload_dummy_find_offloaded_flow(port, ufid);
+    off_flow = dummy_find_offloaded_flow(port, ufid);
     ovs_mutex_unlock(&port->port_mutex);
 
     memset(stats, 0, sizeof *stats);
@@ -786,31 +748,30 @@ dpif_offload_dummy_netdev_flow_stats(const struct 
dpif_offload *offload_,
 }
 
 static void
-dpif_offload_dummy_register_flow_unreference_cb(
-    const struct dpif_offload *offload_, dpif_offload_flow_unreference_cb *cb)
+dummy_register_flow_unreference_cb(const struct dpif_offload *offload_,
+                                   dpif_offload_flow_unreference_cb *cb)
 {
-    struct dpif_offload_dummy *offload = dpif_offload_dummy_cast(offload_);
+    struct dummy_offload *offload = dummy_offload_cast(offload_);
 
     offload->unreference_cb = cb;
 }
 
 static void
-dpif_offload_dummy_flow_unreference(struct dpif_offload_dummy *offload,
-                                    unsigned pmd_id, void *flow_reference)
+dummy_flow_unreference(struct dummy_offload *offload, unsigned pmd_id,
+                       void *flow_reference)
 {
     if (offload->unreference_cb) {
         offload->unreference_cb(pmd_id, flow_reference);
     }
 }
 
-void
-dpif_offload_dummy_netdev_simulate_offload(struct netdev *netdev,
-                                           struct dp_packet *packet,
-                                           struct flow *flow)
+void dpif_offload_dummy_netdev_simulate_offload(struct netdev *netdev,
+                                                struct dp_packet *packet,
+                                                struct flow *flow)
 {
     const struct dpif_offload *offload = ovsrcu_get(
         const struct dpif_offload *, &netdev->dpif_offload);
-    struct dpif_offload_dummy_port *port;
+    struct dummy_offload_port *port;
     struct dummy_offloaded_flow *data;
     struct flow packet_flow;
 
@@ -818,7 +779,7 @@ dpif_offload_dummy_netdev_simulate_offload(struct netdev 
*netdev,
         return;
     }
 
-    port = dpif_offload_dummy_get_port_by_netdev(offload, netdev);
+    port = dummy_get_port_by_netdev(offload, netdev);
     if (!port) {
         return;
     }
@@ -859,30 +820,28 @@ dpif_offload_dummy_netdev_simulate_offload(struct netdev 
*netdev,
     ovs_mutex_unlock(&port->port_mutex);
 }
 
-#define DEFINE_DPIF_DUMMY_CLASS(NAME, TYPE_STR)                        \
-    struct dpif_offload_class NAME = {                                 \
-        .type = TYPE_STR,                                              \
-        .impl_type = DPIF_OFFLOAD_IMPL_FLOWS_DPIF_SYNCED,              \
-        .supported_dpif_types = (const char *const[]) {"dummy", NULL}, \
-        .open = dpif_offload_dummy_open,                               \
-        .close = dpif_offload_dummy_close,                             \
-        .set_config = dpif_offload_dummy_set_config,                   \
-        .get_debug = dpif_offload_dummy_get_debug,                     \
-        .get_global_stats = dpif_offload_dummy_get_global_stats,       \
-        .can_offload = dpif_offload_dummy_can_offload,                 \
-        .port_add = dpif_offload_dummy_port_add,                       \
-        .port_del = dpif_offload_dummy_port_del,                       \
-        .port_dump_start = dpif_offload_dummy_port_dump_start,         \
-        .port_dump_next = dpif_offload_dummy_port_dump_next,           \
-        .port_dump_done = dpif_offload_dummy_port_dump_done,           \
-        .get_netdev = dpif_offload_dummy_get_netdev,                   \
-        .netdev_hw_post_process =                                      \
-            dpif_offload_dummy_netdev_hw_post_process,                 \
-        .netdev_flow_put = dpif_offload_dummy_netdev_flow_put,         \
-        .netdev_flow_del = dpif_offload_dummy_netdev_flow_del,         \
-        .netdev_flow_stats = dpif_offload_dummy_netdev_flow_stats,     \
-        .register_flow_unreference_cb =                                \
-            dpif_offload_dummy_register_flow_unreference_cb,           \
+#define DEFINE_DPIF_DUMMY_CLASS(NAME, TYPE_STR)                             \
+    struct dpif_offload_class NAME = {                                      \
+        .type = TYPE_STR,                                                   \
+        .impl_type = DPIF_OFFLOAD_IMPL_FLOWS_DPIF_SYNCED,                   \
+        .supported_dpif_types = (const char *const[]) {"dummy", NULL},      \
+        .open = dummy_open,                                                 \
+        .close = dummy_close,                                               \
+        .set_config = dummy_set_config,                                     \
+        .get_debug = dummy_get_debug,                                       \
+        .get_global_stats = dummy_get_global_stats,                         \
+        .can_offload = dummy_can_offload,                                   \
+        .port_add = dummy_port_add,                                         \
+        .port_del = dummy_port_del,                                         \
+        .port_dump_start = dummy_port_dump_start,                           \
+        .port_dump_next = dummy_port_dump_next,                             \
+        .port_dump_done = dummy_port_dump_done,                             \
+        .get_netdev = dummy_get_netdev,                                     \
+        .netdev_hw_post_process = dummy_netdev_hw_post_process,             \
+        .netdev_flow_put = dummy_netdev_flow_put,                           \
+        .netdev_flow_del = dummy_netdev_flow_del,                           \
+        .netdev_flow_stats = dummy_netdev_flow_stats,                       \
+        .register_flow_unreference_cb = dummy_register_flow_unreference_cb, \
 }
 
 DEFINE_DPIF_DUMMY_CLASS(dpif_offload_dummy_class, "dummy");
diff --git a/lib/dpif-offload-tc-netdev.c b/lib/dpif-offload-tc-netdev.c
index f40cf7342..c92069b43 100644
--- a/lib/dpif-offload-tc-netdev.c
+++ b/lib/dpif-offload-tc-netdev.c
@@ -564,7 +564,7 @@ delete_chains_from_netdev(struct netdev *netdev, struct 
tcf_id *id)
 }
 
 int
-tc_flow_flush(struct netdev *netdev)
+tc_netdev_flow_flush(struct netdev *netdev)
 {
     struct ufid_tc_data *data;
     int err;
@@ -586,8 +586,8 @@ tc_flow_flush(struct netdev *netdev)
 }
 
 int
-tc_flow_dump_create(struct netdev *netdev,
-                    struct netdev_tc_flow_dump **dump_out, bool terse)
+tc_netdev_flow_dump_create(struct netdev *netdev,
+                           struct netdev_tc_flow_dump **dump_out, bool terse)
 {
     enum tc_qdisc_hook hook = get_tc_qdisc_hook(netdev);
     struct netdev_tc_flow_dump *dump;
@@ -617,7 +617,7 @@ tc_flow_dump_create(struct netdev *netdev,
     return 0;
 }
 int
-tc_flow_dump_destroy(struct netdev_tc_flow_dump *dump)
+tc_netdev_flow_dump_destroy(struct netdev_tc_flow_dump *dump)
 {
     nl_dump_done(dump->nl_dump);
     netdev_close(dump->netdev);
@@ -837,7 +837,7 @@ netdev_tc_get_port_id_by_ifindex(const struct netdev 
*in_netdev, int ifindex)
         return ODPP_NONE;
     }
 
-    return dpif_offload_tc_get_port_id_by_ifindex(offload, ifindex);
+    return tc_get_port_id_by_ifindex(offload, ifindex);
 }
 
 static int
@@ -1364,10 +1364,11 @@ parse_tc_flower_to_match(const struct netdev *netdev,
 }
 
 bool
-tc_flow_dump_next(struct netdev_tc_flow_dump *dump, struct match *match,
-                  struct nlattr **actions, struct dpif_flow_stats *stats,
-                  struct dpif_flow_attrs *attrs, ovs_u128 *ufid,
-                  struct ofpbuf *rbuffer, struct ofpbuf *wbuffer)
+tc_netdev_flow_dump_next(struct netdev_tc_flow_dump *dump, struct match *match,
+                         struct nlattr **actions,
+                         struct dpif_flow_stats *stats,
+                         struct dpif_flow_attrs *attrs, ovs_u128 *ufid,
+                         struct ofpbuf *rbuffer, struct ofpbuf *wbuffer)
 {
     struct netdev *netdev = dump->netdev;
     struct ofpbuf nl_flow;
@@ -2310,12 +2311,11 @@ netdev_tc_parse_nl_actions(struct dpif *dpif, struct 
netdev *netdev,
     return 0;
 }
 
-int
-netdev_offload_tc_flow_put(struct dpif *dpif, struct netdev *netdev,
-                           struct match *match, struct nlattr *actions,
-                           size_t actions_len, const ovs_u128 *ufid,
-                           struct tc_offload_info *info,
-                           struct dpif_flow_stats *stats)
+int tc_netdev_flow_put(struct dpif *dpif, struct netdev *netdev,
+                       struct match *match, struct nlattr *actions,
+                       size_t actions_len, const ovs_u128 *ufid,
+                       struct tc_offload_info *info,
+                       struct dpif_flow_stats *stats)
 {
     static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(5, 20);
     enum tc_qdisc_hook hook = get_tc_qdisc_hook(netdev);
@@ -2738,14 +2738,10 @@ netdev_offload_tc_flow_put(struct dpif *dpif, struct 
netdev *netdev,
     return err;
 }
 
-int
-netdev_offload_tc_flow_get(struct netdev *netdev,
-                           struct match *match,
-                           struct nlattr **actions,
-                           const ovs_u128 *ufid,
-                           struct dpif_flow_stats *stats,
-                           struct dpif_flow_attrs *attrs,
-                           struct ofpbuf *buf)
+int tc_netdev_flow_get(struct netdev *netdev, struct match *match,
+                       struct nlattr **actions, const ovs_u128 *ufid,
+                       struct dpif_flow_stats *stats,
+                       struct dpif_flow_attrs *attrs, struct ofpbuf *buf)
 {
     static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(5, 20);
     struct tc_flower flower;
@@ -2796,8 +2792,7 @@ netdev_offload_tc_flow_get(struct netdev *netdev,
 }
 
 int
-netdev_offload_tc_flow_del(const ovs_u128 *ufid,
-                           struct dpif_flow_stats *stats)
+tc_netdev_flow_del(const ovs_u128 *ufid, struct dpif_flow_stats *stats)
 {
     struct tcf_id id;
     int error;
@@ -2811,7 +2806,7 @@ netdev_offload_tc_flow_del(const ovs_u128 *ufid,
 }
 
 uint64_t
-dpif_offload_tc_flow_count(const struct dpif_offload *offload OVS_UNUSED)
+tc_flow_count(const struct dpif_offload *offload OVS_UNUSED)
 {
     uint64_t total;
 
@@ -3160,7 +3155,7 @@ tc_cleanup_policer_actions(struct id_pool *police_ids,
 }
 
 void
-dpif_offload_tc_meter_init(void)
+tc_meter_init(void)
 {
     static struct ovsthread_once once = OVSTHREAD_ONCE_INITIALIZER;
 
@@ -3176,7 +3171,7 @@ dpif_offload_tc_meter_init(void)
 }
 
 int
-netdev_offload_tc_init(struct netdev *netdev)
+tc_netdev_init(struct netdev *netdev)
 {
     static struct ovsthread_once once = OVSTHREAD_ONCE_INITIALIZER;
     enum tc_qdisc_hook hook = get_tc_qdisc_hook(netdev);
@@ -3229,7 +3224,7 @@ netdev_offload_tc_init(struct netdev *netdev)
         probe_vxlan_gbp_support(ifindex);
         probe_enc_flags_support(ifindex);
 
-        dpif_offload_tc_meter_init();
+        tc_meter_init();
 
         ovs_mutex_lock(&meter_police_ids_mutex);
         tc_cleanup_policer_actions(meter_police_ids, METER_POLICE_IDS_BASE,
@@ -3358,9 +3353,8 @@ meter_free_police_index(uint32_t police_index)
 }
 
 int
-dpif_offload_tc_meter_set(const struct dpif_offload *offload OVS_UNUSED,
-                         ofproto_meter_id meter_id,
-                         struct ofputil_meter_config *config)
+tc_meter_set(const struct dpif_offload *offload OVS_UNUSED,
+             ofproto_meter_id meter_id, struct ofputil_meter_config *config)
 {
     uint32_t police_index;
     uint32_t rate, burst;
@@ -3413,9 +3407,8 @@ dpif_offload_tc_meter_set(const struct dpif_offload 
*offload OVS_UNUSED,
 }
 
 int
-dpif_offload_tc_meter_get(const struct dpif_offload *offload OVS_UNUSED,
-                          ofproto_meter_id meter_id,
-                          struct ofputil_meter_stats *stats)
+tc_meter_get(const struct dpif_offload *offload OVS_UNUSED,
+             ofproto_meter_id meter_id, struct ofputil_meter_stats *stats)
 {
     uint32_t police_index;
     int err = ENOENT;
@@ -3433,9 +3426,8 @@ dpif_offload_tc_meter_get(const struct dpif_offload 
*offload OVS_UNUSED,
 }
 
 int
-dpif_offload_tc_meter_del(const struct dpif_offload *offload OVS_UNUSED,
-                          ofproto_meter_id meter_id,
-                          struct ofputil_meter_stats *stats)
+tc_meter_del(const struct dpif_offload *offload OVS_UNUSED,
+             ofproto_meter_id meter_id, struct ofputil_meter_stats *stats)
 {
     uint32_t police_index;
     int err = ENOENT;
diff --git a/lib/dpif-offload-tc-private.h b/lib/dpif-offload-tc-private.h
index 790f642f5..b876ff1c9 100644
--- a/lib/dpif-offload-tc-private.h
+++ b/lib/dpif-offload-tc-private.h
@@ -41,33 +41,34 @@ struct tc_offload_info {
 
 /* Netdev-specific offload functions.  These should only be used by the
  * associated dpif offload provider. */
-int netdev_offload_tc_init(struct netdev *);
-int tc_flow_flush(struct netdev *);
-int tc_flow_dump_create(struct netdev *, struct netdev_tc_flow_dump **,
-                        bool terse);
-int tc_flow_dump_destroy(struct netdev_tc_flow_dump *);
-bool tc_flow_dump_next(struct netdev_tc_flow_dump *, struct match *,
-                       struct nlattr **actions, struct dpif_flow_stats *,
-                       struct dpif_flow_attrs *, ovs_u128 *ufid,
-                       struct ofpbuf *rbuffer, struct ofpbuf *wbuffer);
-int netdev_offload_tc_flow_put(struct dpif *, struct netdev *, struct match *,
-                               struct nlattr *actions, size_t actions_len,
-                               const ovs_u128 *ufid, struct tc_offload_info *,
-                               struct dpif_flow_stats *);
-int netdev_offload_tc_flow_del(const ovs_u128 *ufid, struct dpif_flow_stats *);
-int netdev_offload_tc_flow_get(struct netdev *, struct match *,
-                               struct nlattr **actions, const ovs_u128 *ufid,
-                               struct dpif_flow_stats *,
-                               struct dpif_flow_attrs *, struct ofpbuf *);
-void dpif_offload_tc_meter_init(void);
-int dpif_offload_tc_meter_set(const struct dpif_offload *, ofproto_meter_id,
+int tc_netdev_init(struct netdev *);
+int tc_netdev_flow_flush(struct netdev *);
+int tc_netdev_flow_dump_create(struct netdev *, struct netdev_tc_flow_dump **,
+                               bool terse);
+int tc_netdev_flow_dump_destroy(struct netdev_tc_flow_dump *);
+bool tc_netdev_flow_dump_next(struct netdev_tc_flow_dump *, struct match *,
+                              struct nlattr **actions,
+                              struct dpif_flow_stats *,
+                              struct dpif_flow_attrs *, ovs_u128 *ufid,
+                              struct ofpbuf *rbuffer, struct ofpbuf *wbuffer);
+int tc_netdev_flow_put(struct dpif *, struct netdev *, struct match *,
+                       struct nlattr *actions, size_t actions_len,
+                       const ovs_u128 *ufid, struct tc_offload_info *,
+                       struct dpif_flow_stats *);
+int tc_netdev_flow_del(const ovs_u128 *ufid, struct dpif_flow_stats *);
+int tc_netdev_flow_get(struct netdev *, struct match *,
+                       struct nlattr **actions, const ovs_u128 *ufid,
+                       struct dpif_flow_stats *, struct dpif_flow_attrs *,
+                       struct ofpbuf *);
+
+void tc_meter_init(void);
+int tc_meter_set(const struct dpif_offload *, ofproto_meter_id,
                               struct ofputil_meter_config *);
-int dpif_offload_tc_meter_get(const struct dpif_offload *, ofproto_meter_id,
+int tc_meter_get(const struct dpif_offload *, ofproto_meter_id,
                               struct ofputil_meter_stats *);
-int dpif_offload_tc_meter_del(const struct dpif_offload *, ofproto_meter_id,
+int tc_meter_del(const struct dpif_offload *, ofproto_meter_id,
                               struct ofputil_meter_stats *);
-uint64_t dpif_offload_tc_flow_count(const struct dpif_offload *);
-odp_port_t dpif_offload_tc_get_port_id_by_ifindex(const struct dpif_offload *,
-                                                  int ifindex);
+uint64_t tc_flow_count(const struct dpif_offload *);
+odp_port_t tc_get_port_id_by_ifindex(const struct dpif_offload *, int ifindex);
 
 #endif /* DPIF_OFFLOAD_TC_PRIVATE_H */
diff --git a/lib/dpif-offload-tc.c b/lib/dpif-offload-tc.c
index 3b9192563..746ad5a81 100644
--- a/lib/dpif-offload-tc.c
+++ b/lib/dpif-offload-tc.c
@@ -33,7 +33,7 @@
 VLOG_DEFINE_THIS_MODULE(dpif_offload_tc);
 
 /* dpif offload interface for the tc implementation. */
-struct dpif_offload_tc {
+struct offload_tc {
     struct dpif_offload offload;
     struct dpif_offload_port_mgr *port_mgr;
 
@@ -43,7 +43,7 @@ struct dpif_offload_tc {
 };
 
 /* tc's flow dump specific data structures. */
-struct dpif_offload_tc_flow_dump {
+struct tc_flow_dump {
     struct dpif_offload_flow_dump dump;
     struct ovs_mutex netdev_dump_mutex;
     size_t netdev_dump_index;
@@ -53,9 +53,9 @@ struct dpif_offload_tc_flow_dump {
 
 #define FLOW_DUMP_MAX_BATCH 50
 
-struct dpif_offload_tc_flow_dump_thread {
+struct tc_flow_dump_thread {
     struct dpif_offload_flow_dump_thread thread;
-    struct dpif_offload_tc_flow_dump *dump;
+    struct tc_flow_dump *dump;
     bool netdev_dump_done;
     size_t netdev_dump_index;
 
@@ -66,18 +66,18 @@ struct dpif_offload_tc_flow_dump_thread {
     struct odputil_keybuf actbuf[FLOW_DUMP_MAX_BATCH];
 };
 
-static struct dpif_offload_tc *
-dpif_offload_tc_cast(const struct dpif_offload *offload)
+static struct offload_tc *
+tc_offload_cast(const struct dpif_offload *offload)
 {
     dpif_offload_assert_class(offload, &dpif_offload_tc_class);
-    return CONTAINER_OF(offload, struct dpif_offload_tc, offload);
+    return CONTAINER_OF(offload, struct offload_tc, offload);
 }
 
 static int
-dpif_offload_tc_enable_offload(struct dpif_offload *dpif_offload,
-                               struct dpif_offload_port_mgr_port *port)
+tc_enable_offload(struct dpif_offload *dpif_offload,
+                  struct dpif_offload_port_mgr_port *port)
 {
-    int ret = netdev_offload_tc_init(port->netdev);
+    int ret = tc_netdev_init(port->netdev);
     if (ret) {
         VLOG_WARN("%s: Failed assigning flow API 'tc', error %d",
                   netdev_get_name(port->netdev), ret);
@@ -89,24 +89,24 @@ dpif_offload_tc_enable_offload(struct dpif_offload 
*dpif_offload,
 }
 
 static int
-dpif_offload_tc_cleanup_offload(struct dpif_offload *dpif_offload OVS_UNUSED,
-                                struct dpif_offload_port_mgr_port *port)
+tc_cleanup_offload(struct dpif_offload *dpif_offload OVS_UNUSED,
+                   struct dpif_offload_port_mgr_port *port)
 {
     dpif_offload_set_netdev_offload(port->netdev, NULL);
     return 0;
 }
 
 static int
-dpif_offload_tc_port_add(struct dpif_offload *dpif_offload,
-                         struct netdev *netdev, odp_port_t port_no)
+tc_port_add(struct dpif_offload *dpif_offload, struct netdev *netdev,
+            odp_port_t port_no)
 {
-    struct dpif_offload_tc *offload_tc = dpif_offload_tc_cast(dpif_offload);
     struct dpif_offload_port_mgr_port *port = xmalloc(sizeof *port);
+    struct offload_tc *offload = tc_offload_cast(dpif_offload);
 
-    if (dpif_offload_port_mgr_add(offload_tc->port_mgr, port, netdev,
-                                  port_no, true)) {
+    if (dpif_offload_port_mgr_add(offload->port_mgr, port, netdev, port_no,
+                                  true)) {
         if (dpif_offload_enabled()) {
-            return dpif_offload_tc_enable_offload(dpif_offload, port);
+            return tc_enable_offload(dpif_offload, port);
         }
         return 0;
     }
@@ -116,68 +116,62 @@ dpif_offload_tc_port_add(struct dpif_offload 
*dpif_offload,
 }
 
 static void
-dpif_offload_tc_free_port(struct dpif_offload_port_mgr_port *port)
+tc_free_port(struct dpif_offload_port_mgr_port *port)
 {
     netdev_close(port->netdev);
     free(port);
 }
 
 static int
-dpif_offload_tc_port_del(struct dpif_offload *dpif_offload,
-                         odp_port_t port_no)
+tc_port_del(struct dpif_offload *dpif_offload, odp_port_t port_no)
 {
-    struct dpif_offload_tc *offload_tc = dpif_offload_tc_cast(dpif_offload);
+    struct offload_tc *offload = tc_offload_cast(dpif_offload);
     struct dpif_offload_port_mgr_port *port;
     int ret = 0;
 
-    port = dpif_offload_port_mgr_remove(offload_tc->port_mgr, port_no);
+    port = dpif_offload_port_mgr_remove(offload->port_mgr, port_no);
     if (port) {
         if (dpif_offload_enabled()) {
-            ret = dpif_offload_tc_cleanup_offload(dpif_offload, port);
+            ret = tc_cleanup_offload(dpif_offload, port);
         }
-        ovsrcu_postpone(dpif_offload_tc_free_port, port);
+        ovsrcu_postpone(tc_free_port, port);
     }
     return ret;
 }
 
 static int
-dpif_offload_tc_port_dump_start(const struct dpif_offload *offload_,
-                                void **statep)
+tc_port_dump_start(const struct dpif_offload *offload_, void **statep)
 {
-    struct dpif_offload_tc *offload = dpif_offload_tc_cast(offload_);
+    struct offload_tc *offload = tc_offload_cast(offload_);
 
     return dpif_offload_port_mgr_port_dump_start(offload->port_mgr, statep);
 }
 
 static int
-dpif_offload_tc_port_dump_next(const struct dpif_offload *offload_,
-                               void *state,
-                               struct dpif_offload_port *port)
+tc_port_dump_next(const struct dpif_offload *offload_, void *state,
+                  struct dpif_offload_port *port)
 {
-    struct dpif_offload_tc *offload = dpif_offload_tc_cast(offload_);
+    struct offload_tc *offload = tc_offload_cast(offload_);
 
     return dpif_offload_port_mgr_port_dump_next(offload->port_mgr, state,
                                                 port);
 }
 
 static int
-dpif_offload_tc_port_dump_done(const struct dpif_offload *offload_,
-                               void *state)
+tc_port_dump_done(const struct dpif_offload *offload_, void *state)
 {
-    struct dpif_offload_tc *offload = dpif_offload_tc_cast(offload_);
+    struct offload_tc *offload = tc_offload_cast(offload_);
 
     return dpif_offload_port_mgr_port_dump_done(offload->port_mgr, state);
 }
 
 static struct netdev *
-dpif_offload_tc_get_netdev(struct dpif_offload *dpif_offload,
-                           odp_port_t port_no)
+tc_get_netdev(struct dpif_offload *dpif_offload, odp_port_t port_no)
 {
-    struct dpif_offload_tc *offload_tc = dpif_offload_tc_cast(dpif_offload);
+    struct offload_tc *offload = tc_offload_cast(dpif_offload);
     struct dpif_offload_port_mgr_port *port;
 
-    port = dpif_offload_port_mgr_find_by_odp_port(offload_tc->port_mgr,
-                                                  port_no);
+    port = dpif_offload_port_mgr_find_by_odp_port(offload->port_mgr, port_no);
     if (!port) {
         return NULL;
     }
@@ -186,77 +180,73 @@ dpif_offload_tc_get_netdev(struct dpif_offload 
*dpif_offload,
 }
 
 static int
-dpif_offload_tc_open(const struct dpif_offload_class *offload_class,
-                     struct dpif *dpif, struct dpif_offload **dpif_offload)
+tc_open(const struct dpif_offload_class *offload_class, struct dpif *dpif,
+        struct dpif_offload **dpif_offload)
 {
-    struct dpif_offload_tc *offload_tc;
-
-    offload_tc = xmalloc(sizeof *offload_tc);
+    struct offload_tc *offload = xmalloc(sizeof *offload);
 
-    dpif_offload_init(&offload_tc->offload, offload_class, dpif);
-    offload_tc->port_mgr = dpif_offload_port_mgr_init();
-    offload_tc->once_enable =
-        (struct ovsthread_once) OVSTHREAD_ONCE_INITIALIZER;
-    offload_tc->recirc_id_shared = !!(dpif_get_features(dpif)
-                                      & OVS_DP_F_TC_RECIRC_SHARING);
+    dpif_offload_init(&offload->offload, offload_class, dpif);
+    offload->port_mgr = dpif_offload_port_mgr_init();
+    offload->once_enable = (struct ovsthread_once) OVSTHREAD_ONCE_INITIALIZER;
+    offload->recirc_id_shared = !!(dpif_get_features(dpif)
+                                   & OVS_DP_F_TC_RECIRC_SHARING);
 
     VLOG_DBG("Datapath %s recirculation id sharing ",
-             offload_tc->recirc_id_shared ? "supports" : "does not support");
+             offload->recirc_id_shared ? "supports" : "does not support");
 
-    dpif_offload_tc_meter_init();
+    tc_meter_init();
 
-    *dpif_offload = &offload_tc->offload;
+    *dpif_offload = &offload->offload;
     return 0;
 }
 
 static void
-dpif_offload_tc_close(struct dpif_offload *dpif_offload)
+tc_close(struct dpif_offload *dpif_offload)
 {
-    struct dpif_offload_tc *offload_tc = dpif_offload_tc_cast(dpif_offload);
+    struct offload_tc *offload = tc_offload_cast(dpif_offload);
     struct dpif_offload_port_mgr_port *port;
 
-    DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload_tc->port_mgr) {
-        dpif_offload_tc_port_del(dpif_offload, port->port_no);
+    DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
+        tc_port_del(dpif_offload, port->port_no);
     }
 
-    dpif_offload_port_mgr_uninit(offload_tc->port_mgr);
-    ovsthread_once_destroy(&offload_tc->once_enable);
-    free(offload_tc);
+    dpif_offload_port_mgr_uninit(offload->port_mgr);
+    ovsthread_once_destroy(&offload->once_enable);
+    free(offload);
 }
 
 static void
-dpif_offload_tc_set_config(struct dpif_offload *offload,
-                           const struct smap *other_cfg)
+tc_set_config(struct dpif_offload *offload_, const struct smap *other_cfg)
 {
-    struct dpif_offload_tc *offload_tc = dpif_offload_tc_cast(offload);
+    struct offload_tc *offload = tc_offload_cast(offload_);
 
     if (smap_get_bool(other_cfg, "hw-offload", false)) {
-        if (ovsthread_once_start(&offload_tc->once_enable)) {
+        if (ovsthread_once_start(&offload->once_enable)) {
             struct dpif_offload_port_mgr_port *port;
 
             tc_set_policy(smap_get_def(other_cfg, "tc-policy",
                                        TC_POLICY_DEFAULT));
 
-            DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload_tc->port_mgr) {
-                dpif_offload_tc_enable_offload(offload, port);
+            DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
+                tc_enable_offload(offload_, port);
             }
 
-            ovsthread_once_done(&offload_tc->once_enable);
+            ovsthread_once_done(&offload->once_enable);
         }
     }
 }
 
 static void
-dpif_offload_tc_get_debug(const struct dpif_offload *offload, struct ds *ds,
-                          struct json *json)
+tc_get_debug(const struct dpif_offload *offload_, struct ds *ds,
+             struct json *json)
 {
-    struct dpif_offload_tc *offload_tc = dpif_offload_tc_cast(offload);
+    struct offload_tc *offload = tc_offload_cast(offload_);
 
     if (json) {
         struct json *json_ports = json_object_create();
         struct dpif_offload_port_mgr_port *port;
 
-        DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload_tc->port_mgr) {
+        DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
             struct json *json_port = json_object_create();
 
             json_object_put(json_port, "port_no",
@@ -276,7 +266,7 @@ dpif_offload_tc_get_debug(const struct dpif_offload 
*offload, struct ds *ds,
     } else if (ds) {
         struct dpif_offload_port_mgr_port *port;
 
-        DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload_tc->port_mgr) {
+        DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
             ds_put_format(ds, "  - %s: port_no: %u, ifindex: %d\n",
                           netdev_get_name(port->netdev),
                           port->port_no, port->ifindex);
@@ -285,8 +275,8 @@ dpif_offload_tc_get_debug(const struct dpif_offload 
*offload, struct ds *ds,
 }
 
 static bool
-dpif_offload_tc_can_offload(struct dpif_offload *dpif_offload OVS_UNUSED,
-                            struct netdev *netdev)
+tc_can_offload(struct dpif_offload *dpif_offload OVS_UNUSED,
+               struct netdev *netdev)
 {
     if (netdev_vport_is_vport_class(netdev->netdev_class) &&
         strcmp(netdev_get_dpif_type(netdev), "system")) {
@@ -298,14 +288,14 @@ dpif_offload_tc_can_offload(struct dpif_offload 
*dpif_offload OVS_UNUSED,
 }
 
 static int
-dpif_offload_tc_flow_flush(const struct dpif_offload *offload)
+tc_flow_flush(const struct dpif_offload *offload_)
 {
-    struct dpif_offload_tc *offload_tc = dpif_offload_tc_cast(offload);
+    struct offload_tc *offload = tc_offload_cast(offload_);
     struct dpif_offload_port_mgr_port *port;
     int error = 0;
 
-    DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload_tc->port_mgr) {
-        int rc = tc_flow_flush(port->netdev);
+    DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload->port_mgr) {
+        int rc = tc_netdev_flow_flush(port->netdev);
 
         if (rc && !error) {
             error = rc;
@@ -314,28 +304,26 @@ dpif_offload_tc_flow_flush(const struct dpif_offload 
*offload)
     return error;
 }
 
-static struct dpif_offload_tc_flow_dump *
-dpif_offload_tc_flow_dump_cast(struct dpif_offload_flow_dump *dump)
+static struct tc_flow_dump *
+tc_flow_dump_cast(struct dpif_offload_flow_dump *dump)
 {
-    return CONTAINER_OF(dump, struct dpif_offload_tc_flow_dump, dump);
+    return CONTAINER_OF(dump, struct tc_flow_dump, dump);
 }
 
-static struct dpif_offload_tc_flow_dump_thread *
-dpif_offload_tc_flow_dump_thread_cast(
+static struct tc_flow_dump_thread *
+tc_flow_dump_thread_cast(
     struct dpif_offload_flow_dump_thread *thread)
 {
-    return CONTAINER_OF(thread, struct dpif_offload_tc_flow_dump_thread,
-                        thread);
+    return CONTAINER_OF(thread, struct tc_flow_dump_thread, thread);
 }
 
 static struct dpif_offload_flow_dump *
-dpif_offload_tc_flow_dump_create(const struct dpif_offload *offload_,
-                                 bool terse)
+tc_flow_dump_create(const struct dpif_offload *offload_, bool terse)
 {
-    struct dpif_offload_tc *offload = dpif_offload_tc_cast(offload_);
+    struct offload_tc *offload = tc_offload_cast(offload_);
     struct dpif_offload_port_mgr_port *port;
-    struct dpif_offload_tc_flow_dump *dump;
     size_t added_port_count = 0;
+    struct tc_flow_dump *dump;
     size_t port_count;
 
     port_count = dpif_offload_port_mgr_port_count(offload->port_mgr);
@@ -349,7 +337,7 @@ dpif_offload_tc_flow_dump_create(const struct dpif_offload 
*offload_,
         if (added_port_count >= port_count) {
             break;
         }
-        if (tc_flow_dump_create(
+        if (tc_netdev_flow_dump_create(
             port->netdev, &dump->netdev_dumps[added_port_count], terse)) {
             continue;
         }
@@ -363,11 +351,11 @@ dpif_offload_tc_flow_dump_create(const struct 
dpif_offload *offload_,
 }
 
 static int
-tc_netdev_match_to_dpif_flow(struct match *match, struct ofpbuf *key_buf,
-                             struct ofpbuf *mask_buf, struct nlattr *actions,
-                             struct dpif_flow_stats *stats,
-                             struct dpif_flow_attrs *attrs, ovs_u128 *ufid,
-                             struct dpif_flow *flow, bool terse)
+tc_match_to_dpif_flow(struct match *match, struct ofpbuf *key_buf,
+                      struct ofpbuf *mask_buf, struct nlattr *actions,
+                      struct dpif_flow_stats *stats,
+                      struct dpif_flow_attrs *attrs, ovs_u128 *ufid,
+                      struct dpif_flow *flow, bool terse)
 {
     memset(flow, 0, sizeof *flow);
 
@@ -419,10 +407,9 @@ tc_netdev_match_to_dpif_flow(struct match *match, struct 
ofpbuf *key_buf,
 }
 
 static void
-dpif_offload_tc_advance_provider_dump(
-    struct dpif_offload_tc_flow_dump_thread *thread)
+tc_advance_provider_dump(struct tc_flow_dump_thread *thread)
 {
-    struct dpif_offload_tc_flow_dump *dump = thread->dump;
+    struct tc_flow_dump *dump = thread->dump;
 
     ovs_mutex_lock(&dump->netdev_dump_mutex);
 
@@ -449,13 +436,12 @@ dpif_offload_tc_advance_provider_dump(
 }
 
 static int
-dpif_offload_tc_flow_dump_next(struct dpif_offload_flow_dump_thread *thread_,
-                               struct dpif_flow *flows, int max_flows)
+tc_flow_dump_next(struct dpif_offload_flow_dump_thread *thread_,
+                  struct dpif_flow *flows, int max_flows)
 {
-    struct dpif_offload_tc_flow_dump_thread *thread;
+    struct tc_flow_dump_thread *thread = tc_flow_dump_thread_cast(thread_);
     int n_flows = 0;
 
-    thread = dpif_offload_tc_flow_dump_thread_cast(thread_);
     max_flows = MIN(max_flows, FLOW_DUMP_MAX_BATCH);
 
     while (!thread->netdev_dump_done && n_flows < max_flows) {
@@ -477,30 +463,29 @@ dpif_offload_tc_flow_dump_next(struct 
dpif_offload_flow_dump_thread *thread_,
         ofpbuf_use_stack(&key, keybuf, sizeof *keybuf);
         ofpbuf_use_stack(&act, actbuf, sizeof *actbuf);
         ofpbuf_use_stack(&mask, maskbuf, sizeof *maskbuf);
-        has_next = tc_flow_dump_next(netdev_dump, &match, &actions, &stats,
-                                     &attrs, &ufid, &thread->nl_flows, &act);
+        has_next = tc_netdev_flow_dump_next(netdev_dump, &match, &actions,
+                                            &stats, &attrs, &ufid,
+                                            &thread->nl_flows, &act);
         if (has_next) {
-            tc_netdev_match_to_dpif_flow(&match, &key, &mask, actions, &stats,
-                                         &attrs, &ufid, f,
-                                         thread->dump->dump.terse);
+            tc_match_to_dpif_flow(&match, &key, &mask, actions, &stats,
+                                  &attrs, &ufid, f, thread->dump->dump.terse);
             n_flows++;
         } else {
-            dpif_offload_tc_advance_provider_dump(thread);
+            tc_advance_provider_dump(thread);
         }
     }
     return n_flows;
 }
 
 static int
-dpif_offload_tc_flow_dump_destroy(struct dpif_offload_flow_dump *dump_)
+tc_flow_dump_destroy(struct dpif_offload_flow_dump *dump_)
 {
-    struct dpif_offload_tc_flow_dump *dump;
+    struct tc_flow_dump *dump = tc_flow_dump_cast(dump_);
     int error = 0;
 
-    dump = dpif_offload_tc_flow_dump_cast(dump_);
     for (int i = 0; i < dump->netdev_dump_count; i++) {
         struct netdev_tc_flow_dump *dump_netdev = dump->netdev_dumps[i];
-        int rc = tc_flow_dump_destroy(dump_netdev);
+        int rc = tc_netdev_flow_dump_destroy(dump_netdev);
 
         if (rc && !error) {
             error = rc;
@@ -512,13 +497,13 @@ dpif_offload_tc_flow_dump_destroy(struct 
dpif_offload_flow_dump *dump_)
 }
 
 static struct dpif_offload_flow_dump_thread *
-dpif_offload_tc_flow_dump_thread_create(struct dpif_offload_flow_dump *dump)
+tc_flow_dump_thread_create(struct dpif_offload_flow_dump *dump)
 {
-    struct dpif_offload_tc_flow_dump_thread *thread;
+    struct tc_flow_dump_thread *thread;
 
     thread = xmalloc(sizeof *thread);
     dpif_offload_flow_dump_thread_init(&thread->thread, dump);
-    thread->dump = dpif_offload_tc_flow_dump_cast(dump);
+    thread->dump = tc_flow_dump_cast(dump);
     thread->netdev_dump_index = 0;
     thread->netdev_dump_done = !thread->dump->netdev_dump_count;
     ofpbuf_init(&thread->nl_flows, NL_DUMP_BUFSIZE);
@@ -526,19 +511,17 @@ dpif_offload_tc_flow_dump_thread_create(struct 
dpif_offload_flow_dump *dump)
 }
 
 static void
-dpif_offload_tc_flow_dump_thread_destroy(
-    struct dpif_offload_flow_dump_thread *thread_)
+tc_flow_dump_thread_destroy(struct dpif_offload_flow_dump_thread *thread_)
 {
-    struct dpif_offload_tc_flow_dump_thread *thread;
+    struct tc_flow_dump_thread *thread = tc_flow_dump_thread_cast(thread_);
 
-    thread = dpif_offload_tc_flow_dump_thread_cast(thread_);
     ofpbuf_uninit(&thread->nl_flows);
     free(thread);
 }
 
 static int
-dpif_offload_tc_parse_flow_put(struct dpif_offload_tc *offload_tc,
-                               struct dpif *dpif, struct dpif_flow_put *put)
+tc_parse_flow_put(struct offload_tc *offload_tc, struct dpif *dpif,
+                  struct dpif_flow_put *put)
 {
     static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(5, 20);
     struct dpif_offload_port_mgr_port *port;
@@ -588,11 +571,11 @@ dpif_offload_tc_parse_flow_put(struct dpif_offload_tc 
*offload_tc,
 
     info.recirc_id_shared_with_tc = offload_tc->recirc_id_shared;
 
-    err = netdev_offload_tc_flow_put(dpif, port->netdev, &match,
-                                     CONST_CAST(struct nlattr *, put->actions),
-                                     put->actions_len,
-                                     CONST_CAST(ovs_u128 *, put->ufid),
-                                     &info, put->stats);
+    err = tc_netdev_flow_put(dpif, port->netdev, &match,
+                             CONST_CAST(struct nlattr *, put->actions),
+                             put->actions_len,
+                             CONST_CAST(ovs_u128 *, put->ufid),
+                             &info, put->stats);
 
     if (!err) {
         if (put->flags & DPIF_FP_MODIFY && !info.tc_modify_flow) {
@@ -643,7 +626,7 @@ out:
         int del_err = 0;
 
         if (!info.tc_modify_flow_deleted) {
-            del_err = netdev_offload_tc_flow_del(put->ufid, put->stats);
+            del_err = tc_netdev_flow_del(put->ufid, put->stats);
         }
 
         if (!del_err) {
@@ -663,8 +646,7 @@ out:
 }
 
 static int
-dpif_offload_tc_parse_flow_get(struct dpif_offload_tc *offload_tc,
-                               struct dpif_flow_get *get)
+tc_parse_flow_get(struct offload_tc *offload_tc, struct dpif_flow_get *get)
 {
     struct dpif_offload_port_mgr_port *port;
     struct dpif_flow *dpif_flow = get->flow;
@@ -683,8 +665,8 @@ dpif_offload_tc_parse_flow_get(struct dpif_offload_tc 
*offload_tc,
     ofpbuf_use_stack(&buf, &act_buf, sizeof act_buf);
 
     DPIF_OFFLOAD_PORT_MGR_PORT_FOR_EACH (port, offload_tc->port_mgr) {
-        if (!netdev_offload_tc_flow_get(port->netdev, &match, &actions,
-                                        get->ufid, &stats, &attrs, &buf)) {
+        if (!tc_netdev_flow_get(port->netdev, &match, &actions, get->ufid,
+                                &stats, &attrs, &buf)) {
             err = 0;
             break;
         }
@@ -699,8 +681,8 @@ dpif_offload_tc_parse_flow_get(struct dpif_offload_tc 
*offload_tc,
     ofpbuf_use_stack(&key, &keybuf, sizeof keybuf);
     ofpbuf_use_stack(&act, &actbuf, sizeof actbuf);
     ofpbuf_use_stack(&mask, &maskbuf, sizeof maskbuf);
-    tc_netdev_match_to_dpif_flow(&match, &key, &mask, actions, &stats, &attrs,
-                                 (ovs_u128 *) get->ufid, dpif_flow, false);
+    tc_match_to_dpif_flow(&match, &key, &mask, actions, &stats, &attrs,
+                          (ovs_u128 *) get->ufid, dpif_flow, false);
     ofpbuf_put(get->buffer, nl_attr_get(actions), nl_attr_get_size(actions));
     dpif_flow->actions = ofpbuf_at(get->buffer, 0, 0);
     dpif_flow->actions_len = nl_attr_get_size(actions);
@@ -709,10 +691,10 @@ dpif_offload_tc_parse_flow_get(struct dpif_offload_tc 
*offload_tc,
 }
 
 static void
-dpif_offload_tc_operate(struct dpif *dpif, const struct dpif_offload *offload,
-                        struct dpif_op **ops, size_t n_ops)
+tc_operate(struct dpif *dpif, const struct dpif_offload *offload_,
+           struct dpif_op **ops, size_t n_ops)
 {
-    struct dpif_offload_tc *offload_tc = dpif_offload_tc_cast(offload);
+    struct offload_tc *offload = tc_offload_cast(offload_);
 
     for (size_t i = 0; i < n_ops; i++) {
         struct dpif_op *op = ops[i];
@@ -730,7 +712,7 @@ dpif_offload_tc_operate(struct dpif *dpif, const struct 
dpif_offload *offload,
                 break;
             }
 
-            error = dpif_offload_tc_parse_flow_put(offload_tc, dpif, put);
+            error = tc_parse_flow_put(offload, dpif, put);
             break;
         }
         case DPIF_OP_FLOW_DEL: {
@@ -740,7 +722,7 @@ dpif_offload_tc_operate(struct dpif *dpif, const struct 
dpif_offload *offload,
                 break;
             }
 
-            error = netdev_offload_tc_flow_del(del->ufid, del->stats);
+            error = tc_netdev_flow_del(del->ufid, del->stats);
             break;
         }
         case DPIF_OP_FLOW_GET: {
@@ -750,7 +732,7 @@ dpif_offload_tc_operate(struct dpif *dpif, const struct 
dpif_offload *offload,
                 break;
             }
 
-            error = dpif_offload_tc_parse_flow_get(offload_tc, get);
+            error = tc_parse_flow_get(offload, get);
             break;
         }
         case DPIF_OP_EXECUTE:
@@ -767,14 +749,12 @@ dpif_offload_tc_operate(struct dpif *dpif, const struct 
dpif_offload *offload,
 }
 
 odp_port_t
-dpif_offload_tc_get_port_id_by_ifindex(const struct dpif_offload *offload,
-                                       int ifindex)
+tc_get_port_id_by_ifindex(const struct dpif_offload *offload_, int ifindex)
 {
-    struct dpif_offload_tc *offload_tc = dpif_offload_tc_cast(offload);
+    struct offload_tc *offload = tc_offload_cast(offload_);
     struct dpif_offload_port_mgr_port *port;
 
-    port = dpif_offload_port_mgr_find_by_ifindex(offload_tc->port_mgr,
-                                                 ifindex);
+    port = dpif_offload_port_mgr_find_by_ifindex(offload->port_mgr, ifindex);
     if (port) {
         return port->port_no;
     }
@@ -785,26 +765,26 @@ struct dpif_offload_class dpif_offload_tc_class = {
     .type = "tc",
     .impl_type = DPIF_OFFLOAD_IMPL_FLOWS_PROVIDER_ONLY,
     .supported_dpif_types = (const char *const[]) {"system", NULL},
-    .open = dpif_offload_tc_open,
-    .close = dpif_offload_tc_close,
-    .set_config = dpif_offload_tc_set_config,
-    .get_debug = dpif_offload_tc_get_debug,
-    .can_offload = dpif_offload_tc_can_offload,
-    .port_add = dpif_offload_tc_port_add,
-    .port_del = dpif_offload_tc_port_del,
-    .port_dump_start = dpif_offload_tc_port_dump_start,
-    .port_dump_next = dpif_offload_tc_port_dump_next,
-    .port_dump_done = dpif_offload_tc_port_dump_done,
-    .flow_flush = dpif_offload_tc_flow_flush,
-    .flow_dump_create = dpif_offload_tc_flow_dump_create,
-    .flow_dump_next = dpif_offload_tc_flow_dump_next,
-    .flow_dump_destroy = dpif_offload_tc_flow_dump_destroy,
-    .flow_dump_thread_create = dpif_offload_tc_flow_dump_thread_create,
-    .flow_dump_thread_destroy = dpif_offload_tc_flow_dump_thread_destroy,
-    .operate = dpif_offload_tc_operate,
-    .flow_count = dpif_offload_tc_flow_count,
-    .meter_set = dpif_offload_tc_meter_set,
-    .meter_get = dpif_offload_tc_meter_get,
-    .meter_del = dpif_offload_tc_meter_del,
-    .get_netdev = dpif_offload_tc_get_netdev,
+    .open = tc_open,
+    .close = tc_close,
+    .set_config = tc_set_config,
+    .get_debug = tc_get_debug,
+    .can_offload = tc_can_offload,
+    .port_add = tc_port_add,
+    .port_del = tc_port_del,
+    .port_dump_start = tc_port_dump_start,
+    .port_dump_next = tc_port_dump_next,
+    .port_dump_done = tc_port_dump_done,
+    .flow_flush = tc_flow_flush,
+    .flow_dump_create = tc_flow_dump_create,
+    .flow_dump_next = tc_flow_dump_next,
+    .flow_dump_destroy = tc_flow_dump_destroy,
+    .flow_dump_thread_create = tc_flow_dump_thread_create,
+    .flow_dump_thread_destroy = tc_flow_dump_thread_destroy,
+    .operate = tc_operate,
+    .flow_count = tc_flow_count,
+    .meter_set = tc_meter_set,
+    .meter_get = tc_meter_get,
+    .meter_del = tc_meter_del,
+    .get_netdev = tc_get_netdev,
 };
-- 
2.52.0

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to