#
92e68d9c |
| 14-May-2024 |
Tyler Retzlaff <roretzla@linux.microsoft.com> |
examples: use stdatomic API
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API.
Signed-off-by: Tyler Retzlaff <roretzla@linux.micros
examples: use stdatomic API
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API.
Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org>
show more ...
|
#
b119863b |
| 10-Nov-2023 |
Chengwen Feng <fengchengwen@huawei.com> |
examples/vhost: verify strdup return
Add verify strdup return value logic.
Fixes: 53d3f4778c1d ("vhost: integrate dmadev in asynchronous data-path") Cc: stable@dpdk.org
Signed-off-by: Chengwen Fen
examples/vhost: verify strdup return
Add verify strdup return value logic.
Fixes: 53d3f4778c1d ("vhost: integrate dmadev in asynchronous data-path") Cc: stable@dpdk.org
Signed-off-by: Chengwen Feng <fengchengwen@huawei.com> Acked-by: Huisong Li <lihuisong@huawei.com>
show more ...
|
#
6b6678a6 |
| 13-Sep-2023 |
Thomas Monjalon <thomas@monjalon.net> |
examples: convert to normal control threads
Calls to rte_ctrl_thread_create() are replaced with rte_thread_create_control().
In vhost_blk, the control thread is not forced to be scheduled on core 0
examples: convert to normal control threads
Calls to rte_ctrl_thread_create() are replaced with rte_thread_create_control().
In vhost_blk, the control thread is not forced to be scheduled on core 0 anymore.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Morten Brørup <mb@smartsharesystems.com> Acked-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Acked-by: Konstantin Ananyev <konstantin.v.ananyev@yandex.ru>
show more ...
|
#
62774b78 |
| 03-Jul-2023 |
Thomas Monjalon <thomas@monjalon.net> |
set namespace prefix to threads
When looking at threads in a system, it can be confusing to find some unknown threads without a clue it is started by DPDK.
Let's start all thread names with "dpdk-"
set namespace prefix to threads
When looking at threads in a system, it can be confusing to find some unknown threads without a clue it is started by DPDK.
Let's start all thread names with "dpdk-" plus the driver name if it comes from a driver.
One more constraint: the thread names are generally limited to 16 characters, including the NUL character.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Chengwen Feng <fengchengwen@huawei.com> Acked-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
show more ...
|
#
f9eb7a4b |
| 02-Mar-2023 |
Tyler Retzlaff <roretzla@linux.microsoft.com> |
use atomic intrinsics closer to C11
Use __atomic_fetch_{add,and,or,sub,xor} instead of __atomic_{add,and,or,sub,xor}_fetch when we have no interest in the result of the operation.
This change reduc
use atomic intrinsics closer to C11
Use __atomic_fetch_{add,and,or,sub,xor} instead of __atomic_{add,and,or,sub,xor}_fetch when we have no interest in the result of the operation.
This change reduces unnecessary code that provided the result of the atomic operation while this result was not used.
It also brings us to a closer alignment with atomics available in C11 standard and will reduce review effort when they are integrated.
Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Acked-by: Morten Brørup <mb@smartsharesystems.com> Acked-by: Ruifeng Wang <ruifeng.wang@arm.com> Acked-by: Chengwen Feng <fengchengwen@huawei.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Pavan Nikhilesh <pbhagavatula@marvell.com> Reviewed-by: David Marchand <david.marchand@redhat.com>
show more ...
|
#
f8fcdc59 |
| 25-Oct-2022 |
Xuan Ding <xuan.ding@intel.com> |
examples/vhost: unconfigure DMA vChannel
This patch applies rte_vhost_async_dma_unconfigure() to manually free DMA vChannels. Before unconfiguration, make sure the specified DMA vChannel is no longe
examples/vhost: unconfigure DMA vChannel
This patch applies rte_vhost_async_dma_unconfigure() to manually free DMA vChannels. Before unconfiguration, make sure the specified DMA vChannel is no longer used by any vhost ports.
Signed-off-by: Xuan Ding <xuan.ding@intel.com> Tested-by: Wei Ling <weix.ling@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
#
8d54b1ec |
| 12-Aug-2022 |
Xuan Ding <xuan.ding@intel.com> |
ethdev: remove Rx header split port offload
As announced in the deprecation note, remove the Rx offload flag 'RTE_ETH_RX_OFFLOAD_HEADER_SPLIT' and 'split_hdr_size' field from the structure 'rte_eth_
ethdev: remove Rx header split port offload
As announced in the deprecation note, remove the Rx offload flag 'RTE_ETH_RX_OFFLOAD_HEADER_SPLIT' and 'split_hdr_size' field from the structure 'rte_eth_rxmode'. Meanwhile, the place where the examples and apps initialize the 'split_hdr_size' field, and where the drivers check if the 'split_hdr_size' value is 0 are also removed.
User can still use `RTE_ETH_RX_OFFLOAD_BUFFER_SPLIT` for per-queue packet split offload, which is configured by 'rte_eth_rxseg_split'.
Signed-off-by: Xuan Ding <xuan.ding@intel.com> Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
show more ...
|
#
4ed89049 |
| 04-Oct-2022 |
David Marchand <david.marchand@redhat.com> |
remove prefix to some local macros in apps and examples
RTE_TEST_[RT]X_DESC_DEFAULT and RTE_TEST_[RT]X_DESC_MAX macros have been copied in a lot of app/ and examples/ code. Those macros are local to
remove prefix to some local macros in apps and examples
RTE_TEST_[RT]X_DESC_DEFAULT and RTE_TEST_[RT]X_DESC_MAX macros have been copied in a lot of app/ and examples/ code. Those macros are local to each program.
They are not related to a DPDK public header/API, drop the RTE_TEST_ prefix.
Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
#
40abb903 |
| 14-Jul-2022 |
Wenwu Ma <wenwux.ma@intel.com> |
examples/vhost: fix use after free
In async_enqueue_pkts(), the failed pkts will be freed before return, but, the failed pkts may be retried later, it will cause use after free. So, we free the fail
examples/vhost: fix use after free
In async_enqueue_pkts(), the failed pkts will be freed before return, but, the failed pkts may be retried later, it will cause use after free. So, we free the failed pkts after retry.
Fixes: 1907ce4baec3 ("examples/vhost: fix retry logic on Rx path") Cc: stable@dpdk.org
Signed-off-by: Wenwu Ma <wenwux.ma@intel.com> Tested-by: Wei Ling <weix.ling@intel.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
#
72b452c5 |
| 27-Aug-2022 |
Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> |
eal: remove unneeded includes from a public header
Do not include <ctype.h>, <errno.h>, and <stdlib.h> from <rte_common.h>, because they are not used by this file. Include the needed headers directl
eal: remove unneeded includes from a public header
Do not include <ctype.h>, <errno.h>, and <stdlib.h> from <rte_common.h>, because they are not used by this file. Include the needed headers directly from the files that need them.
Signed-off-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
#
0a666b86 |
| 21-Jun-2022 |
Herakliusz Lipiec <herakliusz.lipiec@intel.com> |
examples/vhost: update usage message
updating vhost usage message to be aligned with the documentation.
Signed-off-by: Herakliusz Lipiec <herakliusz.lipiec@intel.com> Reviewed-by: Chenbo Xia <chenb
examples/vhost: update usage message
updating vhost usage message to be aligned with the documentation.
Signed-off-by: Herakliusz Lipiec <herakliusz.lipiec@intel.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
#
1907ce4b |
| 22-Jun-2022 |
Yuan Wang <yuanx.wang@intel.com> |
examples/vhost: fix retry logic on Rx path
drain_eth_rx() uses rte_vhost_avail_entries() to calculate the available entries to determine if a retry is required. However, this function only works wit
examples/vhost: fix retry logic on Rx path
drain_eth_rx() uses rte_vhost_avail_entries() to calculate the available entries to determine if a retry is required. However, this function only works with split rings, and calculating packed rings will return the wrong value and cause unnecessary retries resulting in a significant performance penalty.
This patch fix that by using the difference between tx/rx burst as the retry condition.
Fixes: be800696c26e ("examples/vhost: use burst enqueue and dequeue from lib") Cc: stable@dpdk.org
Signed-off-by: Yuan Wang <yuanx.wang@intel.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com> Tested-by: Wei Ling <weix.ling@intel.com>
show more ...
|
#
4cc4f3ee |
| 09-Jun-2022 |
Yuan Wang <yuanx.wang@intel.com> |
examples/vhost: support clear in-flight for async dequeue
This patch allows vring_state_changed() to clear in-flight dequeue packets. It also clears the in-flight packets in a thread-safe way in des
examples/vhost: support clear in-flight for async dequeue
This patch allows vring_state_changed() to clear in-flight dequeue packets. It also clears the in-flight packets in a thread-safe way in destroy_device().
Signed-off-by: Yuan Wang <yuanx.wang@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Jiayu Hu <jiayu.hu@intel.com>
show more ...
|
#
6f3d83c7 |
| 18-May-2022 |
Yuan Wang <yuanx.wang@intel.com> |
examples/vhost: fix crash when no VMDq
If the VMDq limits is 0, a divide-by-zero error occurs. This patch replaces throwing a floating point exception with a normal error message.
Fixes: d19533e86f
examples/vhost: fix crash when no VMDq
If the VMDq limits is 0, a divide-by-zero error occurs. This patch replaces throwing a floating point exception with a normal error message.
Fixes: d19533e86f ("examples/vhost: copy old vhost example") Cc: stable@dpdk.org
Signed-off-by: Yuan Wang <yuanx.wang@intel.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
#
a543dcb7 |
| 16-May-2022 |
Xuan Ding <xuan.ding@intel.com> |
examples/vhost: support async dequeue data path
This patch adds the use case for async dequeue API. Vswitch can leverage DMA device to accelerate vhost async dequeue path.
Signed-off-by: Wenwu Ma <
examples/vhost: support async dequeue data path
This patch adds the use case for async dequeue API. Vswitch can leverage DMA device to accelerate vhost async dequeue path.
Signed-off-by: Wenwu Ma <wenwux.ma@intel.com> Signed-off-by: Yuan Wang <yuanx.wang@intel.com> Signed-off-by: Xuan Ding <xuan.ding@intel.com> Tested-by: Yvonne Yang <yvonnex.yang@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
#
a548f7d5 |
| 08-Apr-2022 |
Xuan Ding <xuan.ding@intel.com> |
examples/vhost: use API to check in-flight packets
In async data path, call rte_vhost_async_get_inflight_thread_unsafe() API to directly return the number of in-flight packets instead of maintaining
examples/vhost: use API to check in-flight packets
In async data path, call rte_vhost_async_get_inflight_thread_unsafe() API to directly return the number of in-flight packets instead of maintaining a local variable.
Signed-off-by: Xuan Ding <xuan.ding@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
#
917229c2 |
| 04-Mar-2022 |
Wenwu Ma <wenwux.ma@intel.com> |
examples/vhost: fix launch with physical port
dpdk-vhost will fail to launch with a 40G i40e port because there are not enough mbufs. This patch adds a new option --total-num-mbufs, through which th
examples/vhost: fix launch with physical port
dpdk-vhost will fail to launch with a 40G i40e port because there are not enough mbufs. This patch adds a new option --total-num-mbufs, through which the user can set larger mbuf pool to avoid this problem.
Fixes: 4796ad63ba1f ("examples/vhost: import userspace vhost application") Cc: stable@dpdk.org
Signed-off-by: Wenwu Ma <wenwux.ma@intel.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
#
73d16d66 |
| 17-Feb-2022 |
Chengwen Feng <fengchengwen@huawei.com> |
examples/vhost: remove DMA type option help info
The dma-type parameter was not supported when dmadev was integrated in vhost, but the help info still exists. This patch deletes it.
Fixes: 53d3f477
examples/vhost: remove DMA type option help info
The dma-type parameter was not supported when dmadev was integrated in vhost, but the help info still exists. This patch deletes it.
Fixes: 53d3f4778c1d ("vhost: integrate dmadev in asynchronous data-path")
Signed-off-by: Chengwen Feng <fengchengwen@huawei.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
#
53d3f477 |
| 09-Feb-2022 |
Jiayu Hu <jiayu.hu@intel.com> |
vhost: integrate dmadev in asynchronous data-path
Since dmadev is introduced in 21.11, to avoid the overhead of vhost DMA abstraction layer and simplify application logics, this patch integrates dma
vhost: integrate dmadev in asynchronous data-path
Since dmadev is introduced in 21.11, to avoid the overhead of vhost DMA abstraction layer and simplify application logics, this patch integrates dmadev in asynchronous data path.
Signed-off-by: Jiayu Hu <jiayu.hu@intel.com> Signed-off-by: Sunil Pai G <sunil.pai.g@intel.com> Tested-by: Yvonne Yang <yvonnex.yang@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
#
7be78d02 |
| 29-Nov-2021 |
Josh Soref <jsoref@gmail.com> |
fix spelling in comments and strings
The tool comes from https://github.com/jsoref
Signed-off-by: Josh Soref <jsoref@gmail.com> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
|
#
25cf2630 |
| 17-Nov-2021 |
Ferruh Yigit <ferruh.yigit@intel.com> |
net: add macro for VLAN header length
Multiple drivers are defining macros for VLAN header length, to remove the redundancy defining macro in the ether header. And updated drivers to use the new mac
net: add macro for VLAN header length
Multiple drivers are defining macros for VLAN header length, to remove the redundancy defining macro in the ether header. And updated drivers to use the new macro.
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com> Acked-by: Haiyue Wang <haiyue.wang@intel.com> Acked-by: Rosen Xu <rosen.xu@intel.com> Acked-by: Jiawen Wu <jiawenwu@trustnetic.com>
show more ...
|
#
5932109a |
| 04-Nov-2021 |
Chenbo Xia <chenbo.xia@intel.com> |
examples/vhost: fix port init in mergeable mode
When the example starts in mergeable mode with an i40e port, it fails to launch because the examples use default mtu MAX_MTU to configure ethdev. The
examples/vhost: fix port init in mergeable mode
When the example starts in mergeable mode with an i40e port, it fails to launch because the examples use default mtu MAX_MTU to configure ethdev. The root cause is some devices have Ethernet frame overhead and then MAX_MTU will be larger than device's max mtu, so the ethdev configure will fail.
This patch checks the device's max MTU before setting the ethdev configuration. If the device has a max MTU, use that value to configure.
Fixes: 1bb4a528c41f ("ethdev: fix max Rx packet length")
Reported-by: Xingguang He <xingguang.he@intel.com> Signed-off-by: Chenbo Xia <chenbo.xia@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
#
ab4bb424 |
| 02-Nov-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
vhost: rename driver callbacks struct
As previously announced, this patch renames struct vhost_device_ops to struct rte_vhost_device_ops.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
vhost: rename driver callbacks struct
As previously announced, this patch renames struct vhost_device_ops to struct rte_vhost_device_ops.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
#
daa02b5c |
| 15-Oct-2021 |
Olivier Matz <olivier.matz@6wind.com> |
mbuf: add namespace to offload flags
Fix the mbuf offload flags namespace by adding an RTE_ prefix to the name. The old flags remain usable, but a deprecation warning is issued at compilation.
Sign
mbuf: add namespace to offload flags
Fix the mbuf offload flags namespace by adding an RTE_ prefix to the name. The old flags remain usable, but a deprecation warning is issued at compilation.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com> Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru> Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com> Acked-by: Somnath Kotur <somnath.kotur@broadcom.com>
show more ...
|
#
5b634932 |
| 15-Oct-2021 |
Olivier Matz <olivier.matz@6wind.com> |
mbuf: mark old VLAN offload flags as deprecated
The flags PKT_TX_VLAN_PKT and PKT_TX_QINQ_PKT are marked as deprecated since commit 380a7aab1ae2 ("mbuf: rename deprecated VLAN flags") (2017). But th
mbuf: mark old VLAN offload flags as deprecated
The flags PKT_TX_VLAN_PKT and PKT_TX_QINQ_PKT are marked as deprecated since commit 380a7aab1ae2 ("mbuf: rename deprecated VLAN flags") (2017). But they were not using the RTE_DEPRECATED macro, because it did not exist at this time. Add it, and replace usage of these flags.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com> Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru> Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|