dpdk: Add support for Mellanox ConnectX-4 devices
[vpp.git] / vnet / vnet / dpo / load_balance.h
index d630a2c..dc6485e 100644 (file)
@@ -111,6 +111,11 @@ typedef struct load_balance_t_ {
      */
     index_t lb_map;
 
+    /**
+     * This is the index of the uRPF list for this LB
+     */
+    index_t lb_urpf;
+
     /**
      * the hash config to use when selecting a bucket. this is a u16
      */
@@ -130,8 +135,8 @@ typedef struct load_balance_t_ {
     dpo_id_t lb_buckets_inline[LB_NUM_INLINE_BUCKETS];
 } load_balance_t;
 
-_Static_assert(sizeof(load_balance_t) <= CLIB_CACHE_LINE_BYTES,
-              "A load_balance object size exceeds one cachline");
+STATIC_ASSERT(sizeof(load_balance_t) <= CLIB_CACHE_LINE_BYTES,
+             "A load_balance object size exceeds one cachline");
 
 /**
  * Flags controlling load-balance formatting/display
@@ -160,6 +165,9 @@ extern void load_balance_multipath_update(
 extern void load_balance_set_bucket(index_t lbi,
                                    u32 bucket,
                                    const dpo_id_t *next);
+extern void load_balance_set_urpf(index_t lbi,
+                                 index_t urpf);
+extern index_t load_balance_get_urpf(index_t lbi);
 
 extern u8* format_load_balance(u8 * s, va_list * args);