diff options
author | Brian Russell <brian@graphiant.com> | 2021-02-15 11:49:42 +0000 |
---|---|---|
committer | Neale Ranns <neale@graphiant.com> | 2021-02-15 16:18:32 +0000 |
commit | 54be0cc044f445853fae7b8995c477605250af16 (patch) | |
tree | c0be40e818039fa620efda5bb85e7535f63ef296 /src/vnet/policer/police.h | |
parent | 1a3e08a7197addb1c07e66c1b1da3286c9bcb140 (diff) |
policer: improve policer struct
Ensure policer struct is cache aligned and fits in one cache line.
Give it a simpler name to reflect its job as the representation of
a policer.
Type: improvement
Signed-off-by: Brian Russell <brian@graphiant.com>
Change-Id: If1ae4931c818b86eee20306e503f4e5d6b84bd0d
Diffstat (limited to 'src/vnet/policer/police.h')
-rw-r--r-- | src/vnet/policer/police.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/vnet/policer/police.h b/src/vnet/policer/police.h index 7867a2e2f33..f780bf65c50 100644 --- a/src/vnet/policer/police.h +++ b/src/vnet/policer/police.h @@ -71,7 +71,7 @@ typedef enum typedef struct { - + CLIB_CACHE_LINE_ALIGN_MARK (cacheline0); u32 lock; // for exclusive access to the struct u32 single_rate; // 1 = single rate policer, 0 = two rate policer @@ -97,11 +97,12 @@ typedef struct u32 thread_index; // Tie policer to a thread, rather than lock u32 pad32; -} policer_read_response_type_st; +} policer_t; + +STATIC_ASSERT_SIZEOF (policer_t, CLIB_CACHE_LINE_BYTES); static inline policer_result_e -vnet_police_packet (policer_read_response_type_st * policer, - u32 packet_length, +vnet_police_packet (policer_t *policer, u32 packet_length, policer_result_e packet_color, u64 time) { u64 n_periods; |