|
Revision tags: v24.07-rc2, v24.07-rc1, v24.03, v24.03-rc4, v24.03-rc3, v24.03-rc2 |
|
| #
c6552d9a |
| 04-Mar-2024 |
Tyler Retzlaff <roretzla@linux.microsoft.com> |
lib: move alignment attribute on types for MSVC
The current location used for __rte_aligned(a) for alignment of types is not compatible with MSVC. There is only a single location accepted by both to
lib: move alignment attribute on types for MSVC
The current location used for __rte_aligned(a) for alignment of types is not compatible with MSVC. There is only a single location accepted by both toolchains.
The standard offers no alignment facility that compatibly interoperates with C and C++ but it may be achieved by relocating the placement of __rte_aligned(a) to the aforementioned location accepted by all currently supported toolchains.
To allow alignment for both compilers, do the following:
* Expand __rte_aligned(a) to __declspec(align(a)) when building with MSVC.
* Move __rte_aligned from the end of {struct,union} definitions to be between {struct,union} and tag.
The placement between {struct,union} and the tag allows the desired alignment to be imparted on the type regardless of the toolchain being used for all of GCC, LLVM, MSVC compilers building both C and C++.
Note: this move has an additional benefit as Doxygen is not confused anymore like for the rte_event_vector struct definition.
Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Acked-by: Morten Brørup <mb@smartsharesystems.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@huawei.com> Acked-by: Chengwen Feng <fengchengwen@huawei.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Signed-off-by: David Marchand <david.marchand@redhat.com>
show more ...
|
| #
0f1dc8cb |
| 29-Feb-2024 |
Tyler Retzlaff <roretzla@linux.microsoft.com> |
lib: use log helper with prefix
Use RTE_LOG_LINE_PREFIX instead of RTE_LOG_LINE in macro expansions which allows a prefix and arguments to be inserted into the log line without the need to use the #
lib: use log helper with prefix
Use RTE_LOG_LINE_PREFIX instead of RTE_LOG_LINE in macro expansions which allows a prefix and arguments to be inserted into the log line without the need to use the ## args variadic argument pack extension.
Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Acked-by: Morten Brørup <mb@smartsharesystems.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Konstantin Ananyev <konstantin.ananyev@huawei.com>
show more ...
|
|
Revision tags: v24.03-rc1, v23.11, v23.11-rc4 |
|
| #
97433132 |
| 17-Nov-2023 |
David Marchand <david.marchand@redhat.com> |
lib: use per line logging in helpers
Use RTE_LOG_LINE in existing macros that append a \n. This will help catching unwanted newline character or multilines in log messages.
Signed-off-by: David Mar
lib: use per line logging in helpers
Use RTE_LOG_LINE in existing macros that append a \n. This will help catching unwanted newline character or multilines in log messages.
Signed-off-by: David Marchand <david.marchand@redhat.com> Reviewed-by: Chengwen Feng <fengchengwen@huawei.com> Reviewed-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
show more ...
|
| #
ae282b06 |
| 17-Nov-2023 |
David Marchand <david.marchand@redhat.com> |
lib: remove redundant newline from logs
Fix places where two newline characters may be logged.
Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Stephen Hemmi
lib: remove redundant newline from logs
Fix places where two newline characters may be logged.
Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Reviewed-by: Chengwen Feng <fengchengwen@huawei.com> Acked-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
show more ...
|
|
Revision tags: v23.11-rc3, v23.11-rc2, v23.11-rc1 |
|
| #
a526461b |
| 14-Aug-2023 |
Stephen Hemminger <stephen@networkplumber.org> |
vhost: use dynamic logtypes for crypto and fdset
Fix instances of USER1 logtype in fdset and crypto sections.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Chenbo Xia <che
vhost: use dynamic logtypes for crypto and fdset
Fix instances of USER1 logtype in fdset and crypto sections.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Chenbo Xia <chenbox@nvidia.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Acked-by: Morten Brørup <mb@smartsharesystems.com>
show more ...
|
|
Revision tags: v23.07, v23.07-rc4, v23.07-rc3, v23.07-rc2, v23.07-rc1, v23.03, v23.03-rc4, v23.03-rc3, v23.03-rc2 |
|
| #
71998eb6 |
| 09-Mar-2023 |
Nobuhiro Miki <nmiki@yahoo-corp.jp> |
vhost: refactor to follow new naming convention
Simply replace 'master' with 'frontend' and 'slave' with 'backend'.
Signed-off-by: Nobuhiro Miki <nmiki@yahoo-corp.jp> Acked-by: Stephen Hemminger <s
vhost: refactor to follow new naming convention
Simply replace 'master' with 'frontend' and 'slave' with 'backend'.
Signed-off-by: Nobuhiro Miki <nmiki@yahoo-corp.jp> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
|
Revision tags: v23.03-rc1 |
|
| #
bf42fb30 |
| 07-Feb-2023 |
David Marchand <david.marchand@redhat.com> |
vhost: annotate IOTLB lock
The starting point for this is __vhost_iova_to_vva() which requires the lock to be taken. Annotate all the code leading to a call to it.
vdpa and vhost_crypto code are an
vhost: annotate IOTLB lock
The starting point for this is __vhost_iova_to_vva() which requires the lock to be taken. Annotate all the code leading to a call to it.
vdpa and vhost_crypto code are annotated but they end up not taking a IOTLB lock and have been marked with a FIXME at the top level.
Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Morten Brørup <mb@smartsharesystems.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
|
Revision tags: v22.11, v22.11-rc4, v22.11-rc3, v22.11-rc2, v22.11-rc1 |
|
| #
e811e2d7 |
| 07-Oct-2022 |
Shijith Thotton <sthotton@marvell.com> |
mbuf: add helper to get/set IOVA address
Added APIs rte_mbuf_iova_set and rte_mbuf_iova_get to set and get the physical address of an mbuf respectively. Updated applications and library to use the s
mbuf: add helper to get/set IOVA address
Added APIs rte_mbuf_iova_set and rte_mbuf_iova_get to set and get the physical address of an mbuf respectively. Updated applications and library to use the same.
Signed-off-by: Shijith Thotton <sthotton@marvell.com> Acked-by: Olivier Matz <olivier.matz@6wind.com>
show more ...
|
| #
bdce2564 |
| 04-Oct-2022 |
Akhil Goyal <gakhil@marvell.com> |
cryptodev: rework session framework
As per current design, rte_cryptodev_sym_session_create() and rte_cryptodev_sym_session_init() use separate mempool objects for a single session. And structure rt
cryptodev: rework session framework
As per current design, rte_cryptodev_sym_session_create() and rte_cryptodev_sym_session_init() use separate mempool objects for a single session. And structure rte_cryptodev_sym_session is not directly used by the application, it may cause ABI breakage if the structure is modified in future.
To address these two issues, the rte_cryptodev_sym_session_create will take one mempool object that the session and session private data are virtually/physically contiguous, and initializes both fields. The API rte_cryptodev_sym_session_init is removed.
rte_cryptodev_sym_session_create will now return an opaque session pointer which will be used by the app and other APIs.
In data path, opaque session pointer is attached to rte_crypto_op and the PMD can call an internal library API to get the session private data pointer based on the driver id.
Note: currently single session may be used by different device drivers, given it is initialized by them. After the change the session created by one device driver cannot be used or reinitialized by another driver.
Signed-off-by: Akhil Goyal <gakhil@marvell.com> Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com> Acked-by: Kai Ji <kai.ji@intel.com> Tested-by: Gagandeep Singh <g.singh@nxp.com> Tested-by: David Coyle <david.coyle@intel.com> Tested-by: Kevin O'Sullivan <kevin.osullivan@intel.com>
show more ...
|
|
Revision tags: v22.07, v22.07-rc4, v22.07-rc3, v22.07-rc2 |
|
| #
2fbada91 |
| 22-Jun-2022 |
David Marchand <david.marchand@redhat.com> |
vhost/crypto: fix descriptor processing
copy_data was returning a pointer to an increased (off by one) descriptor. Subsequent calls to copy_data in the library were then failing. Fix this by increme
vhost/crypto: fix descriptor processing
copy_data was returning a pointer to an increased (off by one) descriptor. Subsequent calls to copy_data in the library were then failing. Fix this by incrementing the descriptor only if there is some left data to copy.
Fixes: 4414bb67010d ("vhost/crypto: fix build with GCC 12") Cc: stable@dpdk.org
Reported-by: Jakub Poczatek <jakub.poczatek@intel.com> Signed-off-by: David Marchand <david.marchand@redhat.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Tested-by: Jakub Poczatek <jakub.poczatek@intel.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
show more ...
|
| #
4414bb67 |
| 16-Jun-2022 |
David Marchand <david.marchand@redhat.com> |
vhost/crypto: fix build with GCC 12
GCC 12 raises the following warning:
In file included from ../lib/mempool/rte_mempool.h:46, from ../lib/mbuf/rte_mbuf.h:38, fro
vhost/crypto: fix build with GCC 12
GCC 12 raises the following warning:
In file included from ../lib/mempool/rte_mempool.h:46, from ../lib/mbuf/rte_mbuf.h:38, from ../lib/vhost/vhost_crypto.c:7: ../lib/vhost/vhost_crypto.c: In function ‘rte_vhost_crypto_fetch_requests’: ../lib/eal/x86/include/rte_memcpy.h:371:9: warning: array subscript 1 is outside array bounds of ‘struct virtio_crypto_op_data_req[1]’ [-Warray-bounds] 371 | rte_mov32((uint8_t *)dst + 3 * 32, (const uint8_t *)src + 3 * 32); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../lib/vhost/vhost_crypto.c:1178:42: note: while referencing ‘req’ 1178 | struct virtio_crypto_op_data_req req; | ^~~
Split this function and separate the per descriptor copy. This makes the code clearer, and the compiler happier.
Note: logs for errors have been moved to callers to avoid duplicates.
Fixes: 3c79609fda7c ("vhost/crypto: handle virtually non-contiguous buffers") Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@redhat.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
|
Revision tags: v22.07-rc1, v22.03, v22.03-rc4, v22.03-rc3, v22.03-rc2, v22.03-rc1 |
|
| #
06c047b6 |
| 09-Feb-2022 |
Stephen Hemminger <stephen@networkplumber.org> |
remove unnecessary null checks
Functions like free, rte_free, and rte_mempool_free already handle NULL pointer so the checks here are not necessary.
Remove redundant NULL pointer checks before free
remove unnecessary null checks
Functions like free, rte_free, and rte_mempool_free already handle NULL pointer so the checks here are not necessary.
Remove redundant NULL pointer checks before free functions found by nullfree.cocci
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
show more ...
|
| #
5e0099dc |
| 07-Feb-2022 |
Christophe Fontaine <cfontain@redhat.com> |
vhost: remove payload size limitation
FDs at the end of the VhostUserMessage structure limits the size of the payload. Move them to an other englobing structure, before the header & payload of a Vho
vhost: remove payload size limitation
FDs at the end of the VhostUserMessage structure limits the size of the payload. Move them to an other englobing structure, before the header & payload of a VhostUserMessage. Also removes a reference to fds in the VHUMsg structure defined in drivers/net/virtio/virtio_user/vhost_user.c
Signed-off-by: Christophe Fontaine <cfontain@redhat.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: David Marchand <david.marchand@redhat.com>
show more ...
|
|
Revision tags: v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2, v21.11-rc1, v21.08, v21.08-rc4, v21.08-rc3, v21.08-rc2, v21.08-rc1 |
|
| #
9cfbe676 |
| 24-May-2021 |
Thierry Herbelot <thierry.herbelot@6wind.com> |
vhost/crypto: check request pointer before dereference
Use vc_req only after it was checked not to be NULL.
Fixes: 2d962bb736521 ("vhost/crypto: fix possible TOCTOU attack") Cc: stable@dpdk.org
Si
vhost/crypto: check request pointer before dereference
Use vc_req only after it was checked not to be NULL.
Fixes: 2d962bb736521 ("vhost/crypto: fix possible TOCTOU attack") Cc: stable@dpdk.org
Signed-off-by: Thierry Herbelot <thierry.herbelot@6wind.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
|
Revision tags: v21.05, v21.05-rc4, v21.05-rc3, v21.05-rc2, v21.05-rc1 |
|
| #
99a2dd95 |
| 20-Apr-2021 |
Bruce Richardson <bruce.richardson@intel.com> |
lib: remove librte_ prefix from directory names
There is no reason for the DPDK libraries to all have 'librte_' prefix on the directory names. This prefix makes the directory names longer and also m
lib: remove librte_ prefix from directory names
There is no reason for the DPDK libraries to all have 'librte_' prefix on the directory names. This prefix makes the directory names longer and also makes it awkward to add features referring to individual libraries in the build - should the lib names be specified with or without the prefix. Therefore, we can just remove the library prefix and use the library's unique name as the directory name, i.e. 'eal' rather than 'librte_eal'
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|