FD.io VPP  v20.09-64-g4f7b92f0a
Vector Packet Processing
phash.c File Reference
+ Include dependency graph for phash.c:

Go to the source code of this file.

Functions

static void init_keys_direct_u32 (phash_main_t *pm)
 
static void init_keys_direct_u64 (phash_main_t *pm)
 
static void init_keys_indirect_u32 (phash_main_t *pm)
 
static void init_keys_indirect_u64 (phash_main_t *pm)
 
static int init_tabb (phash_main_t *pm)
 
static int apply (phash_main_t *pm, u32 tail, u32 rollback)
 
static int augment (phash_main_t *pm, u32 b_root, u32 high_water)
 
static int phash_tabb_compare (void *a1, void *a2)
 
static int perfect (phash_main_t *pm)
 
static void guess_initial_parameters (phash_main_t *pm)
 
static u32 scramble_permute (u32 x, u32 nbits)
 
static void scramble_init (phash_main_t *pm)
 
clib_error_tphash_find_perfect_hash (phash_main_t *pm)
 
uword phash_hash_slow (phash_main_t *pm, uword key)
 
clib_error_tphash_validate (phash_main_t *pm)
 

Variables

static phash_tabb_tsort_tabb
 

Function Documentation

◆ apply()

static int apply ( phash_main_t pm,
u32  tail,
u32  rollback 
)
static

Definition at line 408 of file phash.c.

+ Here is the caller graph for this function:

◆ augment()

static int augment ( phash_main_t pm,
u32  b_root,
u32  high_water 
)
static

Definition at line 497 of file phash.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ guess_initial_parameters()

static void guess_initial_parameters ( phash_main_t pm)
static

Definition at line 665 of file phash.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ init_keys_direct_u32()

static void init_keys_direct_u32 ( phash_main_t pm)
static

Definition at line 95 of file phash.c.

+ Here is the caller graph for this function:

◆ init_keys_direct_u64()

static void init_keys_direct_u64 ( phash_main_t pm)
static

Definition at line 152 of file phash.c.

+ Here is the caller graph for this function:

◆ init_keys_indirect_u32()

static void init_keys_indirect_u32 ( phash_main_t pm)
static

Definition at line 209 of file phash.c.

+ Here is the caller graph for this function:

◆ init_keys_indirect_u64()

static void init_keys_indirect_u64 ( phash_main_t pm)
static

Definition at line 278 of file phash.c.

+ Here is the caller graph for this function:

◆ init_tabb()

static int init_tabb ( phash_main_t pm)
static

Definition at line 351 of file phash.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ perfect()

static int perfect ( phash_main_t pm)
static

Definition at line 602 of file phash.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ phash_find_perfect_hash()

clib_error_t* phash_find_perfect_hash ( phash_main_t pm)

Definition at line 822 of file phash.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ phash_hash_slow()

uword phash_hash_slow ( phash_main_t pm,
uword  key 
)

Definition at line 924 of file phash.c.

+ Here is the caller graph for this function:

◆ phash_tabb_compare()

static int phash_tabb_compare ( void *  a1,
void *  a2 
)
static

Definition at line 588 of file phash.c.

+ Here is the caller graph for this function:

◆ phash_validate()

clib_error_t* phash_validate ( phash_main_t pm)

Definition at line 981 of file phash.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ scramble_init()

static void scramble_init ( phash_main_t pm)
static

Definition at line 810 of file phash.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ scramble_permute()

static u32 scramble_permute ( u32  x,
u32  nbits 
)
inlinestatic

Definition at line 790 of file phash.c.

+ Here is the caller graph for this function:

Variable Documentation

◆ sort_tabb

phash_tabb_t* sort_tabb
static

Definition at line 585 of file phash.c.