Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Use thread local storage for thread index
[vpp.git]
/
src
/
vnet
/
ipsec
/
ipsec.h
diff --git
a/src/vnet/ipsec/ipsec.h
b/src/vnet/ipsec/ipsec.h
index
58f0f14
..
c884e36
100644
(file)
--- a/
src/vnet/ipsec/ipsec.h
+++ b/
src/vnet/ipsec/ipsec.h
@@
-324,21
+324,21
@@
int ipsec_set_interface_key (vnet_main_t * vnm, u32 hw_if_index,
always_inline void
ipsec_alloc_empty_buffers (vlib_main_t * vm, ipsec_main_t * im)
{
always_inline void
ipsec_alloc_empty_buffers (vlib_main_t * vm, ipsec_main_t * im)
{
- u32
cpu_index = os_get_cpu_number
();
- uword l = vec_len (im->empty_buffers[
cpu
_index]);
+ u32
thread_index = vlib_get_thread_index
();
+ uword l = vec_len (im->empty_buffers[
thread
_index]);
uword n_alloc = 0;
if (PREDICT_FALSE (l < VLIB_FRAME_SIZE))
{
uword n_alloc = 0;
if (PREDICT_FALSE (l < VLIB_FRAME_SIZE))
{
- if (!im->empty_buffers[
cpu
_index])
+ if (!im->empty_buffers[
thread
_index])
{
{
- vec_alloc (im->empty_buffers[
cpu
_index], 2 * VLIB_FRAME_SIZE);
+ vec_alloc (im->empty_buffers[
thread
_index], 2 * VLIB_FRAME_SIZE);
}
}
- n_alloc = vlib_buffer_alloc (vm, im->empty_buffers[
cpu
_index] + l,
+ n_alloc = vlib_buffer_alloc (vm, im->empty_buffers[
thread
_index] + l,
2 * VLIB_FRAME_SIZE - l);
2 * VLIB_FRAME_SIZE - l);
- _vec_len (im->empty_buffers[
cpu
_index]) = l + n_alloc;
+ _vec_len (im->empty_buffers[
thread
_index]) = l + n_alloc;
}
}
}
}