|
Revision tags: v22.03, v22.03-rc4, v22.03-rc3, v22.03-rc2, v22.03-rc1 |
|
| #
a41f593f |
| 11-Feb-2022 |
Ferruh Yigit <[email protected]> |
ethdev: introduce generic dummy packet burst function
Multiple PMDs have dummy/noop Rx/Tx packet burst functions.
These dummy functions are very simple, introduce a common function in the ethdev an
ethdev: introduce generic dummy packet burst function
Multiple PMDs have dummy/noop Rx/Tx packet burst functions.
These dummy functions are very simple, introduce a common function in the ethdev and update drivers to use it instead of each driver having its own functions.
Signed-off-by: Ferruh Yigit <[email protected]> Acked-by: Morten Brørup <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]> Acked-by: Thomas Monjalon <[email protected]>
show more ...
|
| #
06c047b6 |
| 09-Feb-2022 |
Stephen Hemminger <[email protected]> |
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 <[email protected]>
show more ...
|
| #
29e5519d |
| 25-Jan-2022 |
Weiguo Li <[email protected]> |
net/dpaa2: fix null pointer dereference
Check for memory allocation failure is added to avoid null pointer dereference.
Fixes: 4690a6114ff6 ("net/dpaa2: enable error queues optionally") Cc: stable@
net/dpaa2: fix null pointer dereference
Check for memory allocation failure is added to avoid null pointer dereference.
Fixes: 4690a6114ff6 ("net/dpaa2: enable error queues optionally") Cc: [email protected]
Signed-off-by: Weiguo Li <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]>
show more ...
|
| #
f023d059 |
| 03-Jan-2022 |
Jun Yang <[email protected]> |
net/dpaa2: support recycle loopback port
DPAA2 recycle port is used for configuring the device in the loopback mode. Loopback configuration can be at dpni level or at serdes level.
Signed-off-by: J
net/dpaa2: support recycle loopback port
DPAA2 recycle port is used for configuring the device in the loopback mode. Loopback configuration can be at dpni level or at serdes level.
Signed-off-by: Jun Yang <[email protected]> Acked-by: Hemant Agrawal <[email protected]>
show more ...
|
| #
6ac5a55b |
| 03-Jan-2022 |
Jun Yang <[email protected]> |
net/dpaa2: handle secondary process for DPNI
This change uses 'dev->process_private' instead of 'priv->hw' to get dpmcp per process while setting flow distribution, as priv->hw is only valid for pri
net/dpaa2: handle secondary process for DPNI
This change uses 'dev->process_private' instead of 'priv->hw' to get dpmcp per process while setting flow distribution, as priv->hw is only valid for primary process. It also initialize rte_dpaa2_bpid_info in secondary process.
Signed-off-by: Jun Yang <[email protected]> Acked-by: Hemant Agrawal <[email protected]>
show more ...
|
| #
72100f0d |
| 03-Jan-2022 |
Gagandeep Singh <[email protected]> |
net/dpaa2: support level 2 in traffic management
This patch adds support for level 2 for QoS shaping.
Signed-off-by: Gagandeep Singh <[email protected]> Acked-by: Hemant Agrawal <[email protected]
net/dpaa2: support level 2 in traffic management
This patch adds support for level 2 for QoS shaping.
Signed-off-by: Gagandeep Singh <[email protected]> Acked-by: Hemant Agrawal <[email protected]>
show more ...
|
| #
d192fd32 |
| 03-Jan-2022 |
Vanshika Shukla <[email protected]> |
net/dpaa2: fix unregistering interrupt handler
This patch fixes code that handles unregistering LSC interrupt handler in dpaa2_dev_stop API.
Fixes: c5acbb5ea20e ("net/dpaa2: support link status eve
net/dpaa2: fix unregistering interrupt handler
This patch fixes code that handles unregistering LSC interrupt handler in dpaa2_dev_stop API.
Fixes: c5acbb5ea20e ("net/dpaa2: support link status event") Cc: [email protected]
Signed-off-by: Vanshika Shukla <[email protected]> Acked-by: Hemant Agrawal <[email protected]>
show more ...
|
| #
35dc25d1 |
| 03-Jan-2022 |
Rohit Raj <[email protected]> |
net/dpaa2: warn on high Rx descriptor number
Added warning message if application is configuring nb_desc more than supported by PEB memory suggesting user to configure HW descriptors in normal memor
net/dpaa2: warn on high Rx descriptor number
Added warning message if application is configuring nb_desc more than supported by PEB memory suggesting user to configure HW descriptors in normal memory rather than in faster PEB memory.
Signed-off-by: Rohit Raj <[email protected]> Acked-by: Hemant Agrawal <[email protected]>
show more ...
|
| #
7be78d02 |
| 29-Nov-2021 |
Josh Soref <[email protected]> |
fix spelling in comments and strings
The tool comes from https://github.com/jsoref
Signed-off-by: Josh Soref <[email protected]> Signed-off-by: Thomas Monjalon <[email protected]>
|
|
Revision tags: v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2 |
|
| #
2fe6f1b7 |
| 02-Nov-2021 |
Dmitry Kozlyuk <[email protected]> |
drivers/net: advertise no support for keeping flow rules
When RTE_ETH_DEV_CAPA_FLOW_RULE_KEEP capability bit is zero, the specified behavior is the same as it had been before this bit was introduced
drivers/net: advertise no support for keeping flow rules
When RTE_ETH_DEV_CAPA_FLOW_RULE_KEEP capability bit is zero, the specified behavior is the same as it had been before this bit was introduced. Explicitly reset it in all PMDs supporting rte_flow API in order to attract the attention of maintainers, who should eventually choose to advertise the new capability or not. It is already known that mlx4 and mlx5 will not support this capability.
For RTE_ETH_DEV_CAPA_FLOW_SHARED_OBJECT_KEEP similar action is not performed, because no PMD except mlx5 supports indirect actions. Any PMD that starts doing so will anyway have to consider all relevant API, including this capability.
Suggested-by: Ferruh Yigit <[email protected]> Signed-off-by: Dmitry Kozlyuk <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Acked-by: Somnath Kotur <[email protected]> Acked-by: Hyong Youb Kim <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]>
show more ...
|
|
Revision tags: v21.11-rc1 |
|
| #
d61138d4 |
| 22-Oct-2021 |
Harman Kalra <[email protected]> |
drivers: remove direct access to interrupt handle
Removing direct access to interrupt handle structure fields, rather use respective get set APIs for the same. Making changes to all the drivers acce
drivers: remove direct access to interrupt handle
Removing direct access to interrupt handle structure fields, rather use respective get set APIs for the same. Making changes to all the drivers access the interrupt handle fields.
Signed-off-by: Harman Kalra <[email protected]> Acked-by: Hyong Youb Kim <[email protected]> Signed-off-by: David Marchand <[email protected]> Tested-by: Raslan Darawsheh <[email protected]>
show more ...
|
| #
295968d1 |
| 22-Oct-2021 |
Ferruh Yigit <[email protected]> |
ethdev: add namespace
Add 'RTE_ETH' namespace to all enums & macros in a backward compatible way. The macros for backward compatibility can be removed in next LTS. Also updated some struct names to
ethdev: add namespace
Add 'RTE_ETH' namespace to all enums & macros in a backward compatible way. The macros for backward compatibility can be removed in next LTS. Also updated some struct names to have 'rte_eth' prefix.
All internal components switched to using new names.
Syntax fixed on lines that this patch touches.
Signed-off-by: Ferruh Yigit <[email protected]> Acked-by: Tyler Retzlaff <[email protected]> Acked-by: Andrew Rybchenko <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Acked-by: Jerin Jacob <[email protected]> Acked-by: Wisam Jaddo <[email protected]> Acked-by: Rosen Xu <[email protected]> Acked-by: Chenbo Xia <[email protected]> Acked-by: Hemant Agrawal <[email protected]> Acked-by: Somnath Kotur <[email protected]>
show more ...
|
| #
b563c142 |
| 18-Oct-2021 |
Ferruh Yigit <[email protected]> |
ethdev: remove jumbo offload flag
Removing 'DEV_RX_OFFLOAD_JUMBO_FRAME' offload flag.
Instead of drivers announce this capability, application can deduct the capability by checking reported 'dev_in
ethdev: remove jumbo offload flag
Removing 'DEV_RX_OFFLOAD_JUMBO_FRAME' offload flag.
Instead of drivers announce this capability, application can deduct the capability by checking reported 'dev_info.max_mtu' or 'dev_info.max_rx_pktlen'.
And instead of application setting this flag explicitly to enable jumbo frames, this can be deduced by driver by comparing requested 'mtu' to 'RTE_ETHER_MTU'.
Removing this additional configuration for simplification.
Suggested-by: Konstantin Ananyev <[email protected]> Signed-off-by: Ferruh Yigit <[email protected]> Acked-by: Andrew Rybchenko <[email protected]> Reviewed-by: Rosen Xu <[email protected]> Acked-by: Somnath Kotur <[email protected]> Acked-by: Konstantin Ananyev <[email protected]> Acked-by: Huisong Li <[email protected]> Acked-by: Hyong Youb Kim <[email protected]> Acked-by: Michal Krawczyk <[email protected]>
show more ...
|
| #
f7e04f57 |
| 18-Oct-2021 |
Ferruh Yigit <[email protected]> |
ethdev: move MTU set check to library
Move requested MTU value check to the API to prevent the duplicated code.
Signed-off-by: Ferruh Yigit <[email protected]> Reviewed-by: Andrew Rybchenko <a
ethdev: move MTU set check to library
Move requested MTU value check to the API to prevent the duplicated code.
Signed-off-by: Ferruh Yigit <[email protected]> Reviewed-by: Andrew Rybchenko <[email protected]> Reviewed-by: Rosen Xu <[email protected]> Acked-by: Somnath Kotur <[email protected]> Acked-by: Konstantin Ananyev <[email protected]>
show more ...
|
| #
dd4e429c |
| 18-Oct-2021 |
Ferruh Yigit <[email protected]> |
ethdev: move jumbo frame offload check to library
Setting MTU bigger than RTE_ETHER_MTU requires the jumbo frame support, and application should enable the jumbo frame offload support for it.
When
ethdev: move jumbo frame offload check to library
Setting MTU bigger than RTE_ETHER_MTU requires the jumbo frame support, and application should enable the jumbo frame offload support for it.
When jumbo frame offload is not enabled by application, but MTU bigger than RTE_ETHER_MTU is requested there are two options, either fail or enable jumbo frame offload implicitly.
Enabling jumbo frame offload implicitly is selected by many drivers since setting a big MTU value already implies it, and this increases usability.
This patch moves this logic from drivers to the library, both to reduce the duplicated code in the drivers and to make behaviour more visible.
Signed-off-by: Ferruh Yigit <[email protected]> Reviewed-by: Andrew Rybchenko <[email protected]> Reviewed-by: Rosen Xu <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Acked-by: Somnath Kotur <[email protected]> Acked-by: Konstantin Ananyev <[email protected]> Acked-by: Huisong Li <[email protected]>
show more ...
|
| #
1bb4a528 |
| 18-Oct-2021 |
Ferruh Yigit <[email protected]> |
ethdev: fix max Rx packet length
There is a confusion on setting max Rx packet length, this patch aims to clarify it.
'rte_eth_dev_configure()' API accepts max Rx packet size via 'uint32_t max_rx_p
ethdev: fix max Rx packet length
There is a confusion on setting max Rx packet length, this patch aims to clarify it.
'rte_eth_dev_configure()' API accepts max Rx packet size via 'uint32_t max_rx_pkt_len' field of the config struct 'struct rte_eth_conf'.
Also 'rte_eth_dev_set_mtu()' API can be used to set the MTU, and result stored into '(struct rte_eth_dev)->data->mtu'.
These two APIs are related but they work in a disconnected way, they store the set values in different variables which makes hard to figure out which one to use, also having two different method for a related functionality is confusing for the users.
Other issues causing confusion is: * maximum transmission unit (MTU) is payload of the Ethernet frame. And 'max_rx_pkt_len' is the size of the Ethernet frame. Difference is Ethernet frame overhead, and this overhead may be different from device to device based on what device supports, like VLAN and QinQ. * 'max_rx_pkt_len' is only valid when application requested jumbo frame, which adds additional confusion and some APIs and PMDs already discards this documented behavior. * For the jumbo frame enabled case, 'max_rx_pkt_len' is an mandatory field, this adds configuration complexity for application.
As solution, both APIs gets MTU as parameter, and both saves the result in same variable '(struct rte_eth_dev)->data->mtu'. For this 'max_rx_pkt_len' updated as 'mtu', and it is always valid independent from jumbo frame.
For 'rte_eth_dev_configure()', 'dev->data->dev_conf.rxmode.mtu' is user request and it should be used only within configure function and result should be stored to '(struct rte_eth_dev)->data->mtu'. After that point both application and PMD uses MTU from this variable.
When application doesn't provide an MTU during 'rte_eth_dev_configure()' default 'RTE_ETHER_MTU' value is used.
Additional clarification done on scattered Rx configuration, in relation to MTU and Rx buffer size. MTU is used to configure the device for physical Rx/Tx size limitation, Rx buffer is where to store Rx packets, many PMDs use mbuf data buffer size as Rx buffer size. PMDs compare MTU against Rx buffer size to decide enabling scattered Rx or not. If scattered Rx is not supported by device, MTU bigger than Rx buffer size should fail.
Signed-off-by: Ferruh Yigit <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Acked-by: Somnath Kotur <[email protected]> Acked-by: Huisong Li <[email protected]> Acked-by: Andrew Rybchenko <[email protected]> Acked-by: Konstantin Ananyev <[email protected]> Acked-by: Rosen Xu <[email protected]> Acked-by: Hyong Youb Kim <[email protected]>
show more ...
|
| #
8d7d4fcd |
| 13-Oct-2021 |
Konstantin Ananyev <[email protected]> |
ethdev: change input parameters for Rx queue count
Currently majority of fast-path ethdev ops take pointers to internal queue data structures as an input parameter. While eth_rx_queue_count() takes
ethdev: change input parameters for Rx queue count
Currently majority of fast-path ethdev ops take pointers to internal queue data structures as an input parameter. While eth_rx_queue_count() takes a pointer to rte_eth_dev and queue index. For future work to hide rte_eth_devices[] and friends it would be plausible to unify parameters list of all fast-path ethdev ops. This patch changes eth_rx_queue_count() to accept pointer to internal queue data as input parameter. While this change is transparent to user, it still counts as an ABI change, as eth_rx_queue_count_t is used by ethdev public inline function rte_eth_rx_queue_count().
Signed-off-by: Konstantin Ananyev <[email protected]> Reviewed-by: Andrew Rybchenko <[email protected]> Acked-by: Hyong Youb Kim <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]> Tested-by: Feifei Wang <[email protected]>
show more ...
|
| #
7483341a |
| 06-Oct-2021 |
Xueming Li <[email protected]> |
ethdev: change queue release callback
Currently, most ethdev callback API use queue ID as parameter, but Rx and Tx queue release callback use queue object which is used by Rx and Tx burst data plane
ethdev: change queue release callback
Currently, most ethdev callback API use queue ID as parameter, but Rx and Tx queue release callback use queue object which is used by Rx and Tx burst data plane callback.
To align with other eth device queue configuration callbacks: - queue release callbacks are changed to use queue ID - all drivers are adapted
Signed-off-by: Xueming Li <[email protected]> Reviewed-by: Andrew Rybchenko <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Acked-by: Somnath Kotur <[email protected]> Acked-by: Ferruh Yigit <[email protected]>
show more ...
|
| #
49ed3224 |
| 06-Oct-2021 |
Xueming Li <[email protected]> |
ethdev: make queue release callback optional
Some drivers don't need Rx and Tx queue release callback, make them optional. Clean up empty queue release callbacks for some drivers.
Signed-off-by: Xu
ethdev: make queue release callback optional
Some drivers don't need Rx and Tx queue release callback, make them optional. Clean up empty queue release callbacks for some drivers.
Signed-off-by: Xueming Li <[email protected]> Reviewed-by: Andrew Rybchenko <[email protected]> Acked-by: Ferruh Yigit <[email protected]> Acked-by: Thomas Monjalon <[email protected]> Acked-by: Hemant Agrawal <[email protected]>
show more ...
|
| #
8c9f976f |
| 01-Oct-2021 |
Andrew Rybchenko <[email protected]> |
ethdev: improve xstats names by IDs get prototype
Adjust parameters order to eth_xstats_get_by_id_t prototype. Make ids the second parameter similar to eth_xstats_get_by_id_t.
Signed-off-by: Andrew
ethdev: improve xstats names by IDs get prototype
Adjust parameters order to eth_xstats_get_by_id_t prototype. Make ids the second parameter similar to eth_xstats_get_by_id_t.
Signed-off-by: Andrew Rybchenko <[email protected]> Acked-by: Ferruh Yigit <[email protected]>
show more ...
|
| #
79ef9825 |
| 06-Oct-2021 |
Hemant Agrawal <[email protected]> |
net/dpaa2: add debug log for jumbo MTU
This patch adds a debug print for MTU configured on the device when jumbo frames are enabled.
Signed-off-by: Hemant Agrawal <[email protected]>
|
| #
028d1dfd |
| 06-Oct-2021 |
Jun Yang <[email protected]> |
net/dpaa2: support Tx flow redirection action
TX redirection support by flow action RTE_FLOW_ACTION_TYPE_PHY_PORT and RTE_FLOW_ACTION_TYPE_PORT_ID
This action is executed by HW to forward packets b
net/dpaa2: support Tx flow redirection action
TX redirection support by flow action RTE_FLOW_ACTION_TYPE_PHY_PORT and RTE_FLOW_ACTION_TYPE_PORT_ID
This action is executed by HW to forward packets between ports. If the ingress packets match the rule, the packets are switched without software involved and perf is improved as well.
Signed-off-by: Jun Yang <[email protected]> Acked-by: Hemant Agrawal <[email protected]>
show more ...
|
| #
2cb2abf3 |
| 06-Oct-2021 |
Hemant Agrawal <[email protected]> |
bus/fslmc: update MC FW to 10.28
Updating MC firmware support APIs to be latest. It supports improved DPDMUX (SRIOV equivalent) for traffic split between dpnis and additional PTP APIs.
Signed-off-b
bus/fslmc: update MC FW to 10.28
Updating MC firmware support APIs to be latest. It supports improved DPDMUX (SRIOV equivalent) for traffic split between dpnis and additional PTP APIs.
Signed-off-by: Hemant Agrawal <[email protected]>
show more ...
|
|
Revision tags: v21.08, v21.08-rc4, v21.08-rc3, v21.08-rc2 |
|
| #
4ed8a733 |
| 19-Jul-2021 |
Vanshika Shukla <[email protected]> |
net/dpaa2: add some parameter validations
This patch adds validation of the port id for rte_pmd_dpaa2_set_custom_hash API to check if the port is a valid DPAA2 port. Also handles some edge cases in
net/dpaa2: add some parameter validations
This patch adds validation of the port id for rte_pmd_dpaa2_set_custom_hash API to check if the port is a valid DPAA2 port. Also handles some edge cases in the rte_pmd_dpaa2_mux_flow_create API.
Signed-off-by: Vanshika Shukla <[email protected]> Acked-by: Hemant Agrawal <[email protected]>
show more ...
|
| #
a5b375ed |
| 19-Jul-2021 |
Nipun Gupta <[email protected]> |
net/dpaa2: add per-thread initialization API
DPAA2 hardware require a hardware portal context. If a thread doing DPAA2 i/o do not have portal, it will allocate it on run-time. This may cause a delay
net/dpaa2: add per-thread initialization API
DPAA2 hardware require a hardware portal context. If a thread doing DPAA2 i/o do not have portal, it will allocate it on run-time. This may cause a delay in the datapath at run-time. To avoid it, it is better to allocate a hw context portal at the start of thread expected to do i/o with DPAA2 hardware.
This patch makes necessary changes for the same and creates a pmd API to allocate a hw context portal for a thread.
Signed-off-by: Nipun Gupta <[email protected]>
show more ...
|