#
920b4e54 |
| 23-Oct-2017 |
Nélio Laranjeiro <nelio.laranjeiro@6wind.com> |
net/mlx5: fix RSS hash update
Few bugs fixes in both configuration get and hash update where inputs are not handled as expected by the ethdev layer.
RSS structure may not be totally usable, the PMD
net/mlx5: fix RSS hash update
Few bugs fixes in both configuration get and hash update where inputs are not handled as expected by the ethdev layer.
RSS structure may not be totally usable, the PMD should try to take as most information from it has it can when it is an hash update or it should try to fill as most as possible in the configuration get. This means that in the RSS configuration structure, the memory space for the RSS hash key may not be present, but the PMD should consider the hash field valid and process/set it.
Fixes: 29c1d8bb3e79 ("net/mlx5: handle a single RSS hash key for all protocols")
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com> Acked-by: Yongseok Koh <yskoh@mellanox.com>
show more ...
|
#
29c1d8bb |
| 09-Oct-2017 |
Nélio Laranjeiro <nelio.laranjeiro@6wind.com> |
net/mlx5: handle a single RSS hash key for all protocols
Since RSS configuration can also be used by flow API, there is no more necessity to keep a list of RSS configurable for each protocol.
Signe
net/mlx5: handle a single RSS hash key for all protocols
Since RSS configuration can also be used by flow API, there is no more necessity to keep a list of RSS configurable for each protocol.
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com> Acked-by: Yongseok Koh <yskoh@mellanox.com>
show more ...
|
#
3f2fe392 |
| 09-Oct-2017 |
Nélio Laranjeiro <nelio.laranjeiro@6wind.com> |
net/mlx5: fix crash during RETA update
Reta update needs to stop/start the port but stopping the port does not disable the polling functions which may end in a segfault if a core is polling the queu
net/mlx5: fix crash during RETA update
Reta update needs to stop/start the port but stopping the port does not disable the polling functions which may end in a segfault if a core is polling the queue while the control thread is modifying it.
This patch changes the sequences to an order where such situation cannot happen.
Fixes: aa13338faf5e ("net/mlx5: rebuild flows on updating RETA") Cc: stable@dpdk.org
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com> Acked-by: Yongseok Koh <yskoh@mellanox.com>
show more ...
|
#
aee1b165 |
| 06-Oct-2017 |
Xueming Li <xuemingl@mellanox.com> |
net/mlx5: change eth device reference for secondary process
rte_eth_dev created by primary process were not available in secondary process, it was not possible to use the primary process local memor
net/mlx5: change eth device reference for secondary process
rte_eth_dev created by primary process were not available in secondary process, it was not possible to use the primary process local memory object from a secondary process.
This patch modify the reference of primary rte_eth_dev object, use local rte_eth_dev secondary process instead.
Signed-off-by: Xueming Li <xuemingl@mellanox.com> Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
show more ...
|
#
d052f535 |
| 23-Aug-2017 |
Nélio Laranjeiro <nelio.laranjeiro@6wind.com> |
net/mlx5: remove pedantic pragma
Those are useless since DPDK headers have been cleaned up.
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com> Acked-by: Shahaf Shuler <shahafs@mellanox.co
net/mlx5: remove pedantic pragma
Those are useless since DPDK headers have been cleaned up.
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com> Acked-by: Shahaf Shuler <shahafs@mellanox.com>
show more ...
|
#
aa13338f |
| 20-Mar-2017 |
Yongseok Koh <yskoh@mellanox.com> |
net/mlx5: rebuild flows on updating RETA
Currently mlx5_dev_rss_reta_update() just updates tables in the host, therefore it isn't immediately effective until restarting the device by calling mlx5_de
net/mlx5: rebuild flows on updating RETA
Currently mlx5_dev_rss_reta_update() just updates tables in the host, therefore it isn't immediately effective until restarting the device by calling mlx5_dev_stop()/mlx5_dev_start() to update the changes in the device side. This patch adds rebuilding the device-specific data structure and applying it to the device right away.
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
show more ...
|
#
d365210e |
| 20-Mar-2017 |
Yongseok Koh <yskoh@mellanox.com> |
net/mlx5: use correct RETA table size
When querying and updating RSS RETA table, it always uses the max size of the device instead of configured value. This patch fixes it and removed the related co
net/mlx5: use correct RETA table size
When querying and updating RSS RETA table, it always uses the max size of the device instead of configured value. This patch fixes it and removed the related comments in the code.
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
show more ...
|
#
fc5b160f |
| 19-Sep-2016 |
Bruce Richardson <bruce.richardson@intel.com> |
net/mlx: fix debug build with gcc 6.1
With recent gcc versions, e.g. gcc 6.1, compilation of mlx drivers with debug enabled produces lots of errors complaining that "pedantic" is not a warning level
net/mlx: fix debug build with gcc 6.1
With recent gcc versions, e.g. gcc 6.1, compilation of mlx drivers with debug enabled produces lots of errors complaining that "pedantic" is not a warning level that can be ignored.
error: ‘-pedantic’ is not an option that controls warnings [-Werror=pragmas] #pragma GCC diagnostic ignored "-pedantic" ^~~~~~~~~~~
These errors can be removed by changing the "-pedantic" to "-Wpedantic".
Fixes: 7fae69eeff13 ("mlx4: new poll mode driver") Fixes: 771fa900b73a ("mlx5: introduce new driver for Mellanox ConnectX-4 adapters")
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
show more ...
|
#
fbd23190 |
| 18-Mar-2016 |
Nélio Laranjeiro <nelio.laranjeiro@6wind.com> |
mlx5: fix null RSS key handling
Update function can be called with no key to enable or disable a RSS protocol, or with a key to be applied to the desired protocols.
Fixes: 2f97422e7759 ("mlx5: supp
mlx5: fix null RSS key handling
Update function can be called with no key to enable or disable a RSS protocol, or with a key to be applied to the desired protocols.
Fixes: 2f97422e7759 ("mlx5: support RSS hash update and get")
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com> Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
show more ...
|
#
c64ccc0e |
| 18-Mar-2016 |
Nélio Laranjeiro <nelio.laranjeiro@6wind.com> |
mlx5: fix overwritten RSS configuration
RSS configuration provided by the application should not be used as storage by the PMD.
Fixes: 2f97422e7759 ("mlx5: support RSS hash update and get")
Signed
mlx5: fix overwritten RSS configuration
RSS configuration provided by the application should not be used as storage by the PMD.
Fixes: 2f97422e7759 ("mlx5: support RSS hash update and get")
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com> Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
show more ...
|
#
634efbc2 |
| 02-Nov-2015 |
Nelio Laranjeiro <nelio.laranjeiro@6wind.com> |
mlx5: support RETA query and update
ConnectX-4 adapters do not have a constant indirection table size, which is set at runtime from the number of RX queues. The maximum size is retrieved using a har
mlx5: support RETA query and update
ConnectX-4 adapters do not have a constant indirection table size, which is set at runtime from the number of RX queues. The maximum size is retrieved using a hardware query and is normally 512.
Since the current RETA API cannot handle a variable size, any query/update command causes it to be silently updated to RSS_INDIRECTION_TABLE_SIZE entries regardless of the original size.
Also due to the underlying type of the configuration structure, the maximum size is limited to RSS_INDIRECTION_TABLE_SIZE (currently 128, at most 256 entries).
A port stop/start must be done to apply the new RETA configuration.
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
show more ...
|
#
0573873d |
| 30-Oct-2015 |
Nelio Laranjeiro <nelio.laranjeiro@6wind.com> |
mlx5: use one RSS hash key per flow type
DPDK expects to have an RSS hash key per flow type (IPv4, IPv6, UDPv4, etc.), to handle this the PMD must keep a table of hash keys to be able to reconfigure
mlx5: use one RSS hash key per flow type
DPDK expects to have an RSS hash key per flow type (IPv4, IPv6, UDPv4, etc.), to handle this the PMD must keep a table of hash keys to be able to reconfigure the queues at each start/stop call.
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com> Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
show more ...
|
#
2f97422e |
| 30-Oct-2015 |
Nelio Laranjeiro <nelio.laranjeiro@6wind.com> |
mlx5: support RSS hash update and get
First implementation of rss_hash_update and rss_hash_conf_get, those functions still lack in functionality but are usable to change the RSS hash key. For now,
mlx5: support RSS hash update and get
First implementation of rss_hash_update and rss_hash_conf_get, those functions still lack in functionality but are usable to change the RSS hash key. For now, the PMD does not handle an indirection table for each kind of flow (IPv4, IPv6, etc.), the same RSS hash key is used for all protocols. This situation explains why the rss_hash_conf_get returns the RSS hash key for all DPDK supported protocols and why the hash key is set for all of them too.
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com> Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
show more ...
|