diff options
Diffstat (limited to 'src/vnet/session/segment_manager.h')
-rw-r--r-- | src/vnet/session/segment_manager.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/vnet/session/segment_manager.h b/src/vnet/session/segment_manager.h index e786b3144c2..1e99c4605a6 100644 --- a/src/vnet/session/segment_manager.h +++ b/src/vnet/session/segment_manager.h @@ -190,7 +190,9 @@ static inline void segment_manager_parse_segment_handle (u64 segment_handle, u32 * sm_index, u32 * segment_index) { - *sm_index = segment_handle >> 32; + /* Upper 8 bits zeroed out as they may be used for cut-through segments. + * See @ref ct_alloc_segment */ + *sm_index = (segment_handle >> 32) & 0xFFFFFF; *segment_index = segment_handle & 0xFFFFFFFF; } |