summaryrefslogtreecommitdiffstats
path: root/src/vnet/bier/bier_imp.h
diff options
context:
space:
mode:
authorNeale Ranns <neale.ranns@cisco.com>2018-01-31 11:35:41 -0800
committerDamjan Marion <dmarion.lists@gmail.com>2018-02-06 12:44:08 +0000
commitf051072f8518097cbce1a8a20510c4e43cb7167c (patch)
tree7d113687fff867ee46013612b3d1693f0cc2aee8 /src/vnet/bier/bier_imp.h
parent7e2c31aba2aa9c2ffbcce235a8cc3c673aba2d2e (diff)
BIER: fix support for longer bit-string lengths
Change-Id: I2421197b76be58099e5f8ed5554410adff202109 Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
Diffstat (limited to 'src/vnet/bier/bier_imp.h')
-rw-r--r--src/vnet/bier/bier_imp.h23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/vnet/bier/bier_imp.h b/src/vnet/bier/bier_imp.h
index fa53989fc93..5b21b06b12d 100644
--- a/src/vnet/bier/bier_imp.h
+++ b/src/vnet/bier/bier_imp.h
@@ -33,16 +33,6 @@
*/
typedef struct bier_imp_t_ {
/**
- * The BIER table into which to forward the post imposed packet
- */
- bier_table_id_t bi_tbl;
-
- /**
- * number of locks
- */
- u32 bi_locks;
-
- /**
* The DPO contirubted from the resolving BIER table.
* One per-IP protocol. This allows us to share a BIER imposition
* object for a IPv4 and IPv6 mfib path.
@@ -60,7 +50,18 @@ typedef struct bier_imp_t_ {
* largest header type so as the bitstring is on the same
* cacheline as the header.
*/
- bier_bit_mask_4096_t bi_bits;
+ u8 bi_bits[BIER_HDR_BUCKETS_1024];
+
+ /**
+ * The BIER table into which to forward the post imposed packet
+ */
+ bier_table_id_t bi_tbl;
+
+ /**
+ * number of locks
+ */
+ u32 bi_locks;
+
} bier_imp_t;
extern index_t bier_imp_add_or_lock(const bier_table_id_t *bt,