FD.io VPP
v21.10.1-2-g0a485f517
Vector Packet Processing
cuckoo_common.h
Go to the documentation of this file.
1
/*
2
Copyright (c) 2017 Cisco and/or its affiliates.
3
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at:
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
/*
18
* Note: to instantiate the template multiple times in a single file,
19
* #undef __included_cuckoo_template_h__...
20
*/
21
#ifndef __included_cuckoo_common_h__
22
#define __included_cuckoo_common_h__
23
24
#include <
vppinfra/types.h
>
25
26
#define CLIB_CUCKOO_OPTIMIZE_PREFETCH 1
27
#define CLIB_CUCKOO_OPTIMIZE_UNROLL 1
28
#define CLIB_CUCKOO_OPTIMIZE_USE_COUNT_LIMITS_SEARCH 1
29
30
#define foreach_clib_cuckoo_error(F) \
31
F (CLIB_CUCKOO_ERROR_SUCCESS, 0, "success") \
32
F (CLIB_CUCKOO_ERROR_NOT_FOUND, -1, "object not found") \
33
F (CLIB_CUCKOO_ERROR_AGAIN, -2, "object busy")
34
35
typedef
enum
36
{
37
#define F(n, v, s) n = v,
38
foreach_clib_cuckoo_error
(
F
)
39
#undef F
40
}
clib_cuckoo_error_e
;
41
42
typedef
struct
43
{
44
uword
bucket1
;
45
uword
bucket2
;
46
u8
reduced_hash
;
47
}
clib_cuckoo_lookup_info_t
;
48
49
#endif
/* __included_cuckoo_common_h__ */
50
51
/** @endcond */
52
53
/*
54
* fd.io coding-style-patch-verification: ON
55
*
56
* Local Variables:
57
* eval: (c-set-style "gnu")
58
* End:
59
*/
types.h
clib_cuckoo_lookup_info_t::bucket1
uword bucket1
Definition:
cuckoo_common.h:44
clib_cuckoo_lookup_info_t
Definition:
cuckoo_common.h:42
uword
u64 uword
Definition:
types.h:112
clib_cuckoo_lookup_info_t::reduced_hash
u8 reduced_hash
Definition:
cuckoo_common.h:46
clib_cuckoo_lookup_info_t::bucket2
uword bucket2
Definition:
cuckoo_common.h:45
F
#define F(n, v, s)
Definition:
cuckoo_common.h:37
clib_cuckoo_error_e
clib_cuckoo_error_e
Definition:
cuckoo_common.h:35
u8
unsigned char u8
Definition:
types.h:56
foreach_clib_cuckoo_error
#define foreach_clib_cuckoo_error(F)
Definition:
cuckoo_common.h:30
extras
deprecated
vppinfra
cuckoo_common.h
Generated on Sat Jan 8 2022 10:34:48 for FD.io VPP by
1.8.17