#
e7750639 |
| 10-Jan-2025 |
Andre Muezerie <andremue@linux.microsoft.com> |
drivers: replace packed attributes
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro
drivers: replace packed attributes
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push.
Macro __rte_packed_end is deliberately utilized to trigger a MSVC compiler warning if no existing packing has been pushed allowing easy identification of locations where the __rte_packed_begin is missing.
Signed-off-by: Andre Muezerie <andremue@linux.microsoft.com> Reviewed-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
show more ...
|
#
27595cd8 |
| 15-Apr-2024 |
Tyler Retzlaff <roretzla@linux.microsoft.com> |
drivers: move alignment attribute on types for MSVC
Move location of __rte_aligned(a) to new conventional location. The new placement between {struct,union} and the tag allows the desired alignment
drivers: move alignment attribute on types for MSVC
Move location of __rte_aligned(a) to new conventional location. The new placement between {struct,union} and the tag allows the desired alignment to be imparted on the type regardless of the toolchain being used for both C and C++. Additionally, it avoids confusion by Doxygen when generating documentation.
Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Acked-by: Morten Brørup <mb@smartsharesystems.com>
show more ...
|
#
971d2b57 |
| 11-Aug-2023 |
Tyler Retzlaff <roretzla@linux.microsoft.com> |
remove C11 compatibility macro
C11 conformant compiler is documented as a minimum requirement to build and consume DPDK. Remove use of RTE_STD_C11 macro marking use of C11 features with __extension_
remove C11 compatibility macro
C11 conformant compiler is documented as a minimum requirement to build and consume DPDK. Remove use of RTE_STD_C11 macro marking use of C11 features with __extension__ since it is no longer necessary and then remove definition of RTE_STD_C11 macro.
Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Reviewed-by: Morten Brørup <mb@smartsharesystems.com>
show more ...
|
#
ef5baf34 |
| 09-Feb-2020 |
Thomas Monjalon <thomas@monjalon.net> |
replace packed attributes
There is a common macro __rte_packed for packing structs, which is now used where appropriate for consistency.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
|
#
f35e5b3e |
| 09-Feb-2020 |
Thomas Monjalon <thomas@monjalon.net> |
replace alignment attributes
There is a common macro __rte_aligned for alignment, which is now used where appropriate for consistency.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Reviewed-
replace alignment attributes
There is a common macro __rte_aligned for alignment, which is now used where appropriate for consistency.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Reviewed-by: David Christensen <drc@linux.vnet.ibm.com>
show more ...
|
#
35b2d13f |
| 21-May-2019 |
Olivier Matz <olivier.matz@6wind.com> |
net: add rte prefix to ether defines
Add 'RTE_' prefix to defines: - rename ETHER_ADDR_LEN as RTE_ETHER_ADDR_LEN. - rename ETHER_TYPE_LEN as RTE_ETHER_TYPE_LEN. - rename ETHER_CRC_LEN as RTE_ETHER_C
net: add rte prefix to ether defines
Add 'RTE_' prefix to defines: - rename ETHER_ADDR_LEN as RTE_ETHER_ADDR_LEN. - rename ETHER_TYPE_LEN as RTE_ETHER_TYPE_LEN. - rename ETHER_CRC_LEN as RTE_ETHER_CRC_LEN. - rename ETHER_HDR_LEN as RTE_ETHER_HDR_LEN. - rename ETHER_MIN_LEN as RTE_ETHER_MIN_LEN. - rename ETHER_MAX_LEN as RTE_ETHER_MAX_LEN. - rename ETHER_MTU as RTE_ETHER_MTU. - rename ETHER_MAX_VLAN_FRAME_LEN as RTE_ETHER_MAX_VLAN_FRAME_LEN. - rename ETHER_MAX_VLAN_ID as RTE_ETHER_MAX_VLAN_ID. - rename ETHER_MAX_JUMBO_FRAME_LEN as RTE_ETHER_MAX_JUMBO_FRAME_LEN. - rename ETHER_MIN_MTU as RTE_ETHER_MIN_MTU. - rename ETHER_LOCAL_ADMIN_ADDR as RTE_ETHER_LOCAL_ADMIN_ADDR. - rename ETHER_GROUP_ADDR as RTE_ETHER_GROUP_ADDR. - rename ETHER_TYPE_IPv4 as RTE_ETHER_TYPE_IPv4. - rename ETHER_TYPE_IPv6 as RTE_ETHER_TYPE_IPv6. - rename ETHER_TYPE_ARP as RTE_ETHER_TYPE_ARP. - rename ETHER_TYPE_VLAN as RTE_ETHER_TYPE_VLAN. - rename ETHER_TYPE_RARP as RTE_ETHER_TYPE_RARP. - rename ETHER_TYPE_QINQ as RTE_ETHER_TYPE_QINQ. - rename ETHER_TYPE_ETAG as RTE_ETHER_TYPE_ETAG. - rename ETHER_TYPE_1588 as RTE_ETHER_TYPE_1588. - rename ETHER_TYPE_SLOW as RTE_ETHER_TYPE_SLOW. - rename ETHER_TYPE_TEB as RTE_ETHER_TYPE_TEB. - rename ETHER_TYPE_LLDP as RTE_ETHER_TYPE_LLDP. - rename ETHER_TYPE_MPLS as RTE_ETHER_TYPE_MPLS. - rename ETHER_TYPE_MPLSM as RTE_ETHER_TYPE_MPLSM. - rename ETHER_VXLAN_HLEN as RTE_ETHER_VXLAN_HLEN. - rename ETHER_ADDR_FMT_SIZE as RTE_ETHER_ADDR_FMT_SIZE. - rename VXLAN_GPE_TYPE_IPV4 as RTE_VXLAN_GPE_TYPE_IPV4. - rename VXLAN_GPE_TYPE_IPV6 as RTE_VXLAN_GPE_TYPE_IPV6. - rename VXLAN_GPE_TYPE_ETH as RTE_VXLAN_GPE_TYPE_ETH. - rename VXLAN_GPE_TYPE_NSH as RTE_VXLAN_GPE_TYPE_NSH. - rename VXLAN_GPE_TYPE_MPLS as RTE_VXLAN_GPE_TYPE_MPLS. - rename VXLAN_GPE_TYPE_GBP as RTE_VXLAN_GPE_TYPE_GBP. - rename VXLAN_GPE_TYPE_VBNG as RTE_VXLAN_GPE_TYPE_VBNG. - rename ETHER_VXLAN_GPE_HLEN as RTE_ETHER_VXLAN_GPE_HLEN.
Do not update the command line library to avoid adding a dependency to librte_net.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com> Reviewed-by: Stephen Hemminger <stephen@networkplumber.org> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
show more ...
|
#
50da8b0d |
| 28-Mar-2018 |
Allain Legacy <allain.legacy@windriver.com> |
net/avp: convert to SPDX license tags
As per the following commit the AVP files maintained by Wind River are converted to use the SPDX license tag format.
commit a4862c9e1a98 ("license: introdu
net/avp: convert to SPDX license tags
As per the following commit the AVP files maintained by Wind River are converted to use the SPDX license tag format.
commit a4862c9e1a98 ("license: introduce SPDX identifiers")
Signed-off-by: Allain Legacy <allain.legacy@windriver.com> Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
show more ...
|
#
0d440d08 |
| 21-Dec-2017 |
Adrien Mazarguil <adrien.mazarguil@6wind.com> |
lib: fix missing includes in exported headers
Many exported headers rely on definitions found in rte_config.h without including it, as shown by the following command:
grep -L '^#include <rte_confi
lib: fix missing includes in exported headers
Many exported headers rely on definitions found in rte_config.h without including it, as shown by the following command:
grep -L '^#include <rte_config.h>' -- \ $(grep -Rl \ $(sed -n '/^#define \([^ ]\+\).*$/{s//\1/;H;};${x;s/\n//;s/\n/\\|/g;p;}' \ build/include/rte_config.h) \ -- build/include/)
We cannot assume external applications will include rte_config.h on their own, neither directly nor through a -include parameter like DPDK does internally.
This not only causes obvious compilation failures that can be reproduced with check-includes.sh such as:
[...]/rte_memory.h:88:43: error: ‘RTE_CACHE_LINE_SIZE’ was not declared in this scope #define __rte_cache_aligned __rte_aligned(RTE_CACHE_LINE_SIZE) ^
It also results in less visible issues, for instance rte_hash_crc.h relying on RTE_ARCH_X86_64's presence to provide dedicated inline functions.
This patch partially reverts the commit below and adds missing include lines to the remaining files.
Fixes: f1a7a5c5f404 ("remove include of generated config header") Cc: stable@dpdk.org
Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com> Acked-by: Thomas Monjalon <thomas@monjalon.net>
show more ...
|
#
df6e0a06 |
| 20-Oct-2017 |
Santosh Shukla <santosh.shukla@caviumnetworks.com> |
drivers/net: rename physical address type to IOVA
Renamed data type from phys_addr_t to rte_iova_t.
Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com> Reviewed-by: Anatoly Burakov <a
drivers/net: rename physical address type to IOVA
Renamed data type from phys_addr_t to rte_iova_t.
Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com> Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
show more ...
|
#
80fcb5ca |
| 26-Apr-2017 |
Adrien Mazarguil <adrien.mazarguil@6wind.com> |
net/avp: fix exported headers
This commit addresses several errors related to missing includes such as:
In file included from /tmp/check-includes.sh.15315.c:1:0: build/include/rte_avp_fifo.h:77:2
net/avp: fix exported headers
This commit addresses several errors related to missing includes such as:
In file included from /tmp/check-includes.sh.15315.c:1:0: build/include/rte_avp_fifo.h:77:22: error: 'struct rte_avp_fifo' declared inside parameter list [-Werror] [...] build/include/rte_avp_fifo.h: In function 'avp_fifo_init': build/include/rte_avp_fifo.h:81:3: error: implicit declaration of function 'rte_panic' [-Werror=implicit-function-declaration] [...] build/include/rte_avp_fifo.h:83:6: error: dereferencing pointer to incomplete type [...] build/include/rte_avp_fifo.h:109:2: error: implicit declaration of function 'rte_wmb' [-Werror=implicit-function-declaration] [...] In file included from /tmp/check-includes.sh.15315.c:1:0: build/include/rte_avp_common.h:104:2: error: unknown type name 'uint64_t' [...] build/include/rte_avp_common.h:386:15: error: 'ETHER_ADDR_LEN' undeclared here (not in a function) [...]
It addresses errors with strict compilation flags:
In file included from /tmp/check-includes.sh.15315.c:1:0: build/include/rte_avp_common.h:122:3: error: ISO C99 doesn't support unnamed structs/unions [-Werror=pedantic] [...] build/include/rte_avp_common.h:136:17: error: ISO C forbids zero-size array 'buffer' [-Werror=pedantic] [...]
And also adds C++ awareness to both header files.
Fixes: 8e680655e205 ("net/avp: add public header files")
Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com> Acked-by: Allain Legacy <allain.legacy@windriver.com>
show more ...
|
#
8e680655 |
| 28-Mar-2017 |
Allain Legacy <allain.legacy@windriver.com> |
net/avp: add public header files
Adds public/exported header files for the AVP PMD. The AVP device is a shared memory based device. The structures and constants that define the method of operation
net/avp: add public header files
Adds public/exported header files for the AVP PMD. The AVP device is a shared memory based device. The structures and constants that define the method of operation of the device must be visible by both the PMD and the host DPDK application. They must not change without proper version controls and updates to both the hypervisor DPDK application and the PMD.
The hypervisor DPDK application is a Wind River Systems proprietary virtual switch.
Signed-off-by: Allain Legacy <allain.legacy@windriver.com> Signed-off-by: Matt Peters <matt.peters@windriver.com> Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
show more ...
|