dpo: migrate old MULTIARCH macros to VLIB_NODE_FN
[vpp.git] / src / vnet / dpo / receive_dpo.h
index 2420fd7..9459fbc 100644 (file)
 
 typedef struct receive_dpo_t_
 {
+    /**
+     * required for pool_get_aligned.
+     *  memebers used in the switch path come first!
+     */
+    CLIB_CACHE_LINE_ALIGN_MARK(cacheline0);
+
     /**
      * The Software interface index on which traffic is received
      */
@@ -41,6 +47,8 @@ typedef struct receive_dpo_t_
     u16 rd_locks;
 } receive_dpo_t;
 
+extern int dpo_is_receive(const dpo_id_t *dpo);
+
 extern void receive_dpo_add_or_lock (dpo_proto_t proto,
                                      u32 sw_if_index,
                                      const ip46_address_t *nh_addr,
@@ -51,7 +59,7 @@ extern void receive_dpo_module_init(void);
 /**
  * @brief pool of all receive DPOs
  */
-receive_dpo_t *receive_dpo_pool;
+extern receive_dpo_t *receive_dpo_pool;
 
 static inline receive_dpo_t *
 receive_dpo_get (index_t index)