Age | Commit message (Collapse) | Author |
|
CONFIG_POOL_CACHE_SIZE is used in pool_cache_t. In pool_cache_t,
there is another variable "num" which type is uint32_t. So if
set CONFIG_POOL_CACHE_SIZE to 256 here, the capacity of pool_cache_t
is 1028B which will waste 60B in one cache line. So reduce it to 255.
Signed-off-by: Kevin Wang <kevin.wang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Ola Liljedahl <ola.Liljedahl@arm.com>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Fixed inconsistent defines of ODP_BUFFER_INVALID, ODP_EVENT_INVALID
and ODP_TIMEOUT_INVALID as NULL instead of 0xffffffff for linux-dpdk
platform, to align with linux-generic as well as abi compatible headers.
Signed-off-by: Yi He <yi.he@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
Fixed search path in pktio_run.sh for pktio_main executable,
and Makefile.am to run platform tests with wrapper script.
Signed-off-by: Yi He <yi.he@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
Signed-off-by: Balakrishna Garapati <balakrishna.garapati@linaro.org>
Reviewed-by: Yi He <yi.he@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
All the changes are within the linux-dpdk/odp_crypto.c file:
1) Added missing brackets which made it impossible to create
a crypto session
2) Increased the number of queues created, from nb_queue_pairs - 1
to nb_queue_pairs, what seems to work better
3) Removed a memory leak - the memory allocated for iv and aad
were not freed
Signed-off-by: Szymon Sliwa <szs@semihalf.com>
Signed-off-by: Balakrishna Garapati <balakrishna.garapati@linaro.org>
Reviewed-by: Yi He <yi.he@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
Signed-off-by: Balakrishna Garapati <balakrishna.garapati@linaro.org>
Reviewed-by: Yi He <yi.he@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
When parsing of the packet is not enabled, application will not
look at parse meta data fields.
Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Ola Liljedahl <ola.Liljedahl@arm.com>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
CONFIG_POOL_MAX_NUM is not used in linux-dpdk.
Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Ola Liljedahl <ola.Liljedahl@arm.com>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Adjust the size of ring based on configured number of
buffers in the pool.
Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Ola Liljedahl <ola.Liljedahl@arm.com>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Exclude subsystem files form application API guide document.
Documentation will be added when API will be stable.
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Move schedule subsystem header to a public folder.
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Move queue subsystem header to a public folder.
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Move pool subsystem header to a public folder.
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Move buffer subsystem header to a public folder.
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
In odp_packet_rem_data() and odp_packet_add_data(), pool_hdl is
able to be gotten from odp_packet_hdr_t, don't need to get from
pool_t indirectly.
Signed-off-by: Kevin Wang <kevin.wang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Ola Liljedahl <ola.Liljedahl@arm.com>
Reviewed-by: Brian Brooks <brian.brooks@arm.com>
Reviewed-by: Yi He <yi.he@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
Separate the pool's control plane and data plane data structures.
This avoids sharing control plane related data and dataplane
related data on the same cache line.
Signed-off-by: Kevin Wang <kevin.wang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Ola Liljedahl <ola.Liljedahl@arm.com>
Reviewed-by: Brian Brooks <brian.brooks@arm.com>
Reviewed-by: Yi He <yi.he@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
Pktio instances need a memory area where to store configuration or
state information. This patch replaces utilization of a fixed size
memory area with a variable size memory area allocated from a predefined
pool. This reduces the memory size needed to store pktio array.
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Yi He <yi.he@linaro.org>
|
|
Pktio instances need a memory area where to store configuration or
state information. The size and structure of this area depends on
pktio type.
This pool is meant to be used for allocation of such memory areas.
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Yi He <yi.he@linaro.org>
|
|
If a class registers more than once the same enumerator, as it could
happen for different PCI platforms, we need to provide information for
the enumerator probe function to know where to act.
This information shall be provided in the odpdrv_enumr_param_t structure
as a void pointer, which will be passed to the probe() function of the
enumerator.
Signed-off-by: Josep Puigdemont <josep.puigdemont@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Yi He <yi.he@linaro.org>
|
|
The total packet meta data size was 7 cache lines for Linux-generic.
For scalable scheduler, the burst metadata is not required. So just
remove it for scalable scheduler. After the changes, the size of
the meta data is 4 cache lines for Linux-generic.
Signed-off-by: Kevin Wang <kevin.wang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Brian Brooks <brian.brooks@arm.com>
Reviewed-by: Yi He <yi.he@linaro.org>
|
|
Reviewed-by: Honnappa Nagarahalli <honnappa.Nagarahalli@arm.com>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Enable utilization of linux-generic version of odp_packet_io_internal.h
for linux-dpdk platform. Subsequently, linux-dpdk version of
odp_packet_io_internal.h is removed.
This is part of an attempt to reduce the delta between linux-dpdk and
linux-generic platforms to permit integration of linux-dpdk pktios
in linux-generic.
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.Nagarahalli@arm.com>
Reviewed-by: Krishna Garapati <balakrishna.garapati@linaro.org>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Move SOCK_ERR_REPORT macro from linux-generic version of
odp_packet_io_internal.h to a common header file.
This is part of an attempt to cleanup linux-generic version of
odp_packet_io_internal.h from macros used only in linux-generic platform
before enabling it for linux-dpdk platform as well.
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.Nagarahalli@arm.com>
Reviewed-by: Krishna Garapati <balakrishna.garapati@linaro.org>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Move sysfs stats function prototype from linux-generic version
of odp_packet_io_internal.h to a new header file.
This is part of an attempt to remove from linux-generic version
of odp_packet_io_internal.h all the references to symbols implemented
only in linux-generic platform before enabling it for linux-dpdk
platform as well.
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.Nagarahalli@arm.com>
Reviewed-by: Krishna Garapati <balakrishna.garapati@linaro.org>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Move socket stats function prototypes from linux-generic version
of odp_packet_io_internal.h.
This is part of an attempt to remove from this header file all the
references to symbols implemented only in linux-generic platform
before enabling it for linux-dpdk platform as well.
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.Nagarahalli@arm.com>
Reviewed-by: Krishna Garapati <balakrishna.garapati@linaro.org>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Signed-off-by: Joyce Kong <joyce.kong@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.Nagarahalli@arm.com>
Reviewed-by: Ola Liljedahl <ola.Liljedahl@arm.com>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
function name already has l3 and l4 layer, argument insert
is more clean here.
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Reviewed-by: Petri Savolainen <petri.savolainen@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
|
|
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
Compare odp_shm_info_t.page_size to all supported page sizes on the system.
This enables passing the test when shmem is not allocated using the
system's default huge page size.
Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Remove duplicate pktio_ops subsystem implementation
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Build SOCKET_MMAP pktio based on configuration option
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Build SOCKET pktio based on configuration option
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Build TAP pktio based on configuration option
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Build ipc pktio based on configuration option
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Build dpdk pktio based on configuration option
Signed-off-by: Bogdan Pricope <bogdan.pricope@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Yi He <yi.he@linaro.org>
|
|
Test the new packet payload print function with couple of
lengths and offsets. Added line feeds to separate packet print
output from CUnit prints.
Signed-off-by: Petri Savolainen <petri.savolainen@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Balasubramanian Manoharan <bala.manoharan@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Implemented the new packet payload print function using
ODP_PRINT macro. Removed an extra space from the print
macro as well as extra null char and line feed from
odp_packet_print.
Signed-off-by: Petri Savolainen <petri.savolainen@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Balasubramanian Manoharan <bala.manoharan@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Added debug print function which includes packet payload bytes.
Printing starts from offset, so it's easy to e.g. limit print
to IPv4 header bytes only:
odp_packet_print_data(pkt, l3_offset(pkt), 20)
Signed-off-by: Petri Savolainen <petri.savolainen@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Balasubramanian Manoharan <bala.manoharan@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
add libconfig and libnuma for docker image for api-next.
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
Restore the ODP_ASSERTS() that assist application debugging that were
lost in the recent packet reference rework. When using --enable-debug
insert guards to detect duplicate packet frees as well as attempts to
modify known shared data sections of packet references.
Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Add section to the User Guide that highlights that unless otherwise
documented, API behavior is undefined if applications pass invalid
parameters to them.
Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Petri Savolainen <petri.savolainen@linaro.org>
|
|
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Pool info support has been extented to provide minimum and maximum
addresses of application accessible data for any pool object (event).
Signed-off-by: Sachin Saxena <sachin.saxena@nxp.com>
Reviewed-by: Petri Savolainen <petri.savolainen@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Checking the minimum frame length is unnecessary as netmap drops truncated
frames internally.
Signed-off-by: Matias Elo <matias.elo@nokia.com>
Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
Previously the mac addresses of virtual netmap devices would clash if
multiple odp processes were run on the same host.
Signed-off-by: Matias Elo <matias.elo@nokia.com>
Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Changes:
- Function rte_set_log_level() is now deprecated. Replace it with
rte_log_set_global_level().
- New dependency added to libnuma.
- Pcap-based virtual devices are renamed to net_pcap.
- DPDK pktio devices cannot be restarted after calling rte_eth_dev_close().
Move rte_eth_dev_close() calls to global terminate from odp_pktio_close().
Signed-off-by: Matias Elo <matias.elo@nokia.com>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
In zero-copy dpdk pktio mode a matching dpdk mempool is required for each
odp packet pool from which packets are sent using dpdk pktio. This is
required for all packet pools, even for those which are not passed directly
to pktio devices as odp_pktio_open() parameters.
Signed-off-by: Matias Elo <matias.elo@nokia.com>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Api defines statemet:
"When classifier is enabled in odp_pktin_queue_config() this
value is ignored, otherwise at least one queue is required."
https://bugs.linaro.org/show_bug.cgi?id=3289
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|