Age | Commit message (Collapse) | Author | Files | Lines |
|
Small fixed size object memory allocator.
Type: improvement
Change-Id: I727705d9d4292b6b38d41e239871103b15aa9038
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: refactor
Change-Id: I1303219f9f2a25d821737665903b0264edd3de32
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Return 0 if the supplied vector pointer is NULL.
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Icb0aab70e0b7c9c1ddcf607c9dfb7e5715f177d1
|
|
Type: refactor
Change-Id: I077110e1a422722e20aa546a6f3224c06ab0cde5
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: refactor
Change-Id: Ie67dc579e88132ddb1ee4a34cb69f96920101772
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
- reduces number of instructions generated 4 times compared to old code
- adds pool_foreach2 which is more friendly to clang-format
Type: improvement
Change-Id: I51e9c7fb09655c60d883987dadf5b2666c12b3f7
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Instead of enforcing a "strict" release of data, which relies on
frequent rescheduling of sessions, allow some pacer coalescing, i.e.,
short bursts, that can minimize load on scheduler/session layer and
potentially leverage tso.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I67e38e5b8dc335bd214113b70c68c27ae92bd6da
|
|
Pretty interesting to see how long plugins take to load.
Type: improvement
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: If496eb73b2e1fd9dd714142cd5195fa7ccd93ebd
|
|
VAT2: A completely auto-generated replacement of VAT.
Reads input message in JSON from stdin and outputs received messages in JSON.
A VAT2 plugin is automatically built for a .api file.
There no longer a need for a separate _test.c.
Example:
vat2 show_version {}
{
"_msgname": "show_version_reply",
"retval": 0,
"program": "vpe",
"version": "21.01-rc0~411-gf6eb348a6",
"build_date": "2020-11-19T09:49:25",
"build_directory": "/vpp/autogen3"
}
vat2 sw_interface_dump '{"sw_if_index": -1,
"name_filter_valid": 0,
"name_filter": ""}'
[{
"_msgname": "sw_interface_details",
"sw_if_index": 0,
"sup_sw_if_index": 0,
"l2_address": "00:00:00:00:00:00",
"flags": "Invalid ENUM",
"type": "IF_API_TYPE_HARDWARE",
"link_duplex": "LINK_DUPLEX_API_UNKNOWN",
"link_speed": 0,
"link_mtu": 0,
"mtu": [0, 0, 0, 0],
"sub_id": 0,
"sub_number_of_tags": 0,
"sub_outer_vlan_id": 0,
"sub_inner_vlan_id": 0,
"sub_if_flags": "Invalid ENUM",
"vtr_op": 0,
"vtr_push_dot1q": 0,
"vtr_tag1": 0,
"vtr_tag2": 0,
"outer_tag": 0,
"b_dmac": "00:00:00:00:00:00",
"b_smac": "00:00:00:00:00:00",
"b_vlanid": 0,
"i_sid": 0,
"interface_name": "local0",
"interface_dev_type": "local",
"tag": ""
}]
This is the first phase and vat2 is not integrated in packaging yet.
Type: feature
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Ib45ddeafb180ea7da8c5dc274a9274d7a4edc876
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
Type: feature
Add a `buffers {page-size}` parameter to specify page size
for buffers. This also fixes an issue with the parsing in
unformat_log2_page_size.
Change-Id: I7d7b1fa0bb7febaa7509cf2c625882f07eeafaad
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
|
|
Type: improvement
We only need to protect the linked lists.
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ie1542073f3993acfc66d99096b08bf9ecd10a49b
|
|
- Refactor make test code to be co-located with
the vpp feature source code.
Type: test
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I0133a00def595fe1c08ab881633ef9f89148a286
|
|
This makes libc use vpp main heap instead of the default libc heap.
This gives better visibility (accounting, tracing) on allocations
happening in external libraries called from vpp (eg. OpenSSL).
Type: feature
Change-Id: I5d8a673472145a4e090bedb443b8c58a967d1cca
Signed-off-by: Benoît Ganne <bganne@cisco.com>
|
|
While underlying mspace_malloc() respects MALLOC_ALIGNMENT (16)
mspace_get_aligned moves start of data for 4 bytes making final result
not aligned to MALLOC_ALIGNED.
Type: fix
Change-Id: Ib1584f315e3658b3b748ebf4886fb7389ce640fe
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
Change-Id: I0e24f1d2ad5c7a11a8bd40125428f86aca867bec
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
Change-Id: I1ab1b100000b4d7212c58e10312e16e7527bd333
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
Signed-off-by: jiangxiaoming <jiangxiaoming@outlook.com>
Change-Id: Ic67977995dbcba97240009373a4b9e9b57c63706
|
|
Fix an issue observed on aarch64 systems when running with dpdk plugin:
dpdk_plugin.so: undefined symbol: va_unformat
Type: fix
Fixes: dae1c7ed38e9f7a86e66f3674de62778cc981331
Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
Change-Id: I22b7ee842dc606f96effdeb7aa4e161496986aed
|
|
Type: fix
Change-Id: I2dbd435d04a09f632286e5d669edc5fafd384f94
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
|
|
If VPP is started in interactive mode, instead of sending logs to syslog
server we print them directly to stderr.
Output is colorized, but that can be turned off with unix { nocolor }
Type: improvement
Change-Id: I9a0f0803e4cba2849a6efa0b6a86b9614ed33ced
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
this save the cache miss on the protect structure.
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I867d5e49df5edfd6b368f17a34747f32840080e4
|
|
Type: fix
Change-Id: I90b537eba7f56dbb1928f0ab5f157218affb43f5
Signed-off-by: Benoît Ganne <bganne@cisco.com>
|
|
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ib9fb1723b55bf322c9fd9f928a3e3b4a529bca5b
|
|
For whatever reason, "typedef struct { ... } *foo_t" gives cgo a
horrible case of indigestion. A minor refactor makes the pain go away.
Type: refactor
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I856b2abf9b16348d2f6145178e683e722914c756
|
|
format_one_elog_event()
vec_len_not_inline()
vec_free_not_inline()
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I0432c1b41b985de380e0b73886d0b03ecc19c703
|
|
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ifc1bcbd8b5f8597796c993a2a5caf3a6c8d2471c
|
|
Type: improvement
Change-Id: I57a9f85f7df1fc48656b72592349f4c544302f77
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: fix
Fixes: ab1a50cf7407e31097b550226c2b6954d6371bea / gerrit 29272
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ic8146a66b54bb9ac6223cf984d4566554b73276d
|
|
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I654747d618cc4fe99b7774827303769fe43392ed
|
|
This patch adds smal header in front of dlmalloc space, and it stores
some additional information about the heap.
Immediate benefit of this patch is that we know the underlying page size
si we can display heap page statistics / real memory usage.
Type: improvement
Change-Id: Ibd6989cc2f2f64630ab08734c9552e15029c5f3f
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
vlib_main_t *vlib_get_main_not_inline(void)
vlib_thread_main_t *vlib_get_thread_main_not_inline(void)
elog_main_t *vlib_get_elog_main_not_inline()
Type: refactor
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I6de306d567283ad28ef34c9be0cf27452aecbf6c
|
|
Type: fix
Change-Id: I8b50777b6ce7df461e5256921591a58e52877628
Signed-off-by: Benoît Ganne <bganne@cisco.com>
|
|
Type: improvement
Change-Id: Ie04302c576869bc7bfaa9f13ed2ea8a403a393d4
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: Ic31f7721f326ca9d78d645abcea63ce58df5bd5b
|
|
Type: fix
Change-Id: I941b92ebec66ccd9c9e9a12d485844313c9f117b
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I33c6a5d1686cc32a6cde149083256d6cf0770fc5
|
|
Type: improvement
Change-Id: I6d00ba840d2168af0658f97c45a42d39be7cbbad
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
Change-Id: Ifb0fa114414aa2fdc244f964612ca3ac3e29b5e1
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
- it is confusing from end consumer perspective that some thing
is somewhere called heap and somewhere mspace
- this is base for additional work where heap pointer is not the same
thing like mspace
Type: improvement
Change-Id: I644d5a0de17690d65d164d8cec3c5654571629ef
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
It's not an elf file, yadda yadda.
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ie02a058adab1068260d9baa0a19398dab8d912d1
|
|
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Id43b0b6db2b42ee5801236df0bd7f7225e1e081c
|
|
Type: improvement
Change-Id: I81a7fb71c8ce0c0d22e326a4ddd01bc1c1aea5f7
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Initialize txq lock only if some txq are shared and check if another
worker is already operating on the txq before processing gro timeouts
in input node.
Type: fix
Change-Id: I89dab6c0e6eb6a7aa621fa1548b0a2c76e6c7581
Signed-off-by: Benoît Ganne <bganne@cisco.com>
|
|
Type: improvement
Change-Id: I9973bce20a0a2a8a7e227cf96518de5b79374425
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
Change-Id: I04752c011e4ca58f56aa53f6ae27bae93a5c4590
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
Change-Id: I381fc3dec8580208d0e24637d791af69011aa83b
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
Change-Id: I298aadfdf17d98dfb1ada1ec4f87e0821e6aeb7f
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
To hold more data later...
Type: improvement
Change-Id: I4006d22dcacd788988c4907f2c263fd4e4a9d398
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
Change-Id: Ie44dbf9396cfed19dba153810b7bd76ce5377cd4
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
This patch aims to improve decap performance by reducing expensive
hash_get callings as less as possible using AVX512 on XEON.
e.g. vxlan, vxlan_gpe, geneve, gtpu.
For the existing code, if vtep4 of the current packet match the last
vtep4_key_t well, expensive hash computation can be avoided and the
code returns directly.
This patch improves tunnel decap multiple flows case greatly by
leveraging 512bit vector register on XEON accommodating 8 vtep4_keys.
It enhances the possiblity of avoiding unnecessary hash computing
once hash key of the current packet hits any one of 8 in the 512bit
cache.
The oldest element in vtep4_cache_t is updated in round-robin order.
vlib_get_buffers is also leveraged in the meanwhile.
Type: improvement
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Signed-off-by: Junfeng Wang <drenfong.wang@intel.com>
Change-Id: I313103202bd76f2dd638cd942554721b37ddad60
|