8a9f8564e9
Currently, the tbl8 group is freed even though the readers might be using the tbl8 group entries. The freed tbl8 group can be reallocated quickly. This results in incorrect lookup results. RCU QSBR process is integrated for safe tbl8 group reclaim. Refer to RCU documentation to understand various aspects of integrating RCU library into other libraries. To avoid ABI breakage, a struct __rte_lpm is created for lpm library internal use. This struct wraps rte_lpm that has been exposed and also includes members that don't need to be exposed such as RCU related config. Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com> Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com> Acked-by: Ray Kinsella <mdr@ashroe.eu> Acked-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
11 lines
409 B
Meson
11 lines
409 B
Meson
# SPDX-License-Identifier: BSD-3-Clause
|
|
# Copyright(c) 2017 Intel Corporation
|
|
|
|
sources = files('rte_lpm.c', 'rte_lpm6.c')
|
|
headers = files('rte_lpm.h', 'rte_lpm6.h')
|
|
# since header files have different names, we can install all vector headers
|
|
# without worrying about which architecture we actually need
|
|
headers += files('rte_lpm_altivec.h', 'rte_lpm_neon.h', 'rte_lpm_sse.h')
|
|
deps += ['hash']
|
|
deps += ['rcu']
|