|
Revision tags: v22.03, v22.03-rc4, v22.03-rc3 |
|
| #
17f95513 |
| 01-Mar-2022 |
Dmitry Kozlyuk <[email protected]> |
net/mlx5: fix link status change detection
Sometimes net/mlx5 devices did not detect link status change to "up".
Each shared device was monitoring IBV_EVENT_PORT_{ACTIVE,ERR} and queried the link s
net/mlx5: fix link status change detection
Sometimes net/mlx5 devices did not detect link status change to "up".
Each shared device was monitoring IBV_EVENT_PORT_{ACTIVE,ERR} and queried the link status upon receiving the event. IBV_EVENT_PORT_ACTIVE is delivered when the logical link status (UP flag) is set, but the physical link status (RUNNING flag) may be down at that time, in which case the new link status would be erroneously considered down.
IBV interface is insufficient for the task. Monitor interface events using Netlink.
Fixes: 198a3c339a8f ("mlx5: handle link status interrupts") Cc: [email protected]
Signed-off-by: Dmitry Kozlyuk <[email protected]> Reviewed-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
|
Revision tags: v22.03-rc2, v22.03-rc1, v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2 |
|
| #
e8482187 |
| 05-Nov-2021 |
Bing Zhao <[email protected]> |
net/mlx5: check delay drop settings in kernel driver
The delay drop is the common feature managed on per device basis and the kernel driver is responsible one for the initialization and rearming.
B
net/mlx5: check delay drop settings in kernel driver
The delay drop is the common feature managed on per device basis and the kernel driver is responsible one for the initialization and rearming.
By default, the timeout value is set to activate the delay drop when the driver is loaded.
A private flag "dropless_rq" is used to control the rearming. Only when it is on, the rearming will be handled once received a timeout event. Or else, the delay drop will be deactivated after the first timeout occurs and all the Rx queues won't have this feature.
The PMD is trying to query this flag and warn the application when some queues are created with delay drop but the flag is off.
Signed-off-by: Bing Zhao <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
|
Revision tags: v21.11-rc1 |
|
| #
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 ...
|
| #
ca1418ce |
| 19-Oct-2021 |
Michael Baum <[email protected]> |
common/mlx5: share device context object
Create shared context device in common area and add it as a field of common device. Use this context device in all drivers and remove the ctx field from thei
common/mlx5: share device context object
Create shared context device in common area and add it as a field of common device. Use this context device in all drivers and remove the ctx field from their private structure.
Signed-off-by: Michael Baum <[email protected]> Acked-by: Matan Azrad <[email protected]>
show more ...
|
|
Revision tags: v21.08, v21.08-rc4, v21.08-rc3, v21.08-rc2 |
|
| #
919488fb |
| 21-Jul-2021 |
Xueming Li <[email protected]> |
net/mlx5: support Sub-Function
Introduce SF support. Similar to VF, SF on auxiliary bus is a portion of hardware PF, no representor or bonding parameters for SF.
Devargs to support SF: -a auxiliary
net/mlx5: support Sub-Function
Introduce SF support. Similar to VF, SF on auxiliary bus is a portion of hardware PF, no representor or bonding parameters for SF.
Devargs to support SF: -a auxiliary:mlx5_core.sf.8,dv_flow_en=1
New global syntax to support SF: -a bus=auxiliary,name=mlx5_core.sf.8/class=eth/driver=mlx5,dv_flow_en=1
Signed-off-by: Xueming Li <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
| #
56bb3c84 |
| 21-Jul-2021 |
Xueming Li <[email protected]> |
net/mlx5: reduce PCI dependency
To support more bus types, remove PCI dependency where possible.
Signed-off-by: Xueming Li <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]
net/mlx5: reduce PCI dependency
To support more bus types, remove PCI dependency where possible.
Signed-off-by: Xueming Li <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
|
Revision tags: v21.08-rc1, v21.05, v21.05-rc4, v21.05-rc3, v21.05-rc2, v21.05-rc1 |
|
| #
e2bd08d5 |
| 02-Apr-2021 |
Chengchang Tang <[email protected]> |
ethdev: validate input in module EEPROM dump
The validity verification of input parameters should be performed at API layer, not in the PMD.
Fixes: 3a18c44b45df ("ethdev: add access to EEPROM") Fix
ethdev: validate input in module EEPROM dump
The validity verification of input parameters should be performed at API layer, not in the PMD.
Fixes: 3a18c44b45df ("ethdev: add access to EEPROM") Fixes: 40ff8b305ab8 ("net/e1000: add module EEPROM callbacks for e1000") Fixes: f2088e785cca ("net/i40e: fix dereference before check when getting EEPROM") Fixes: b74d0cd43e37 ("net/ixgbe: add module EEPROM callbacks for ixgbe") Fixes: 8a6a09f853a0 ("net/mlx5: support reading module EEPROM data") Fixes: 58f6f93c34c1 ("net/octeontx2: add module EEPROM dump") Cc: [email protected]
Signed-off-by: Chengchang Tang <[email protected]> Signed-off-by: Min Hu (Connor) <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]>
show more ...
|
| #
058ac0dd |
| 29-Mar-2021 |
Thomas Monjalon <[email protected]> |
drivers/net: remove useless autoneg capability
The flag ETH_LINK_SPEED_AUTONEG is 0, so it cannot be used in a capability bitmap.
Having 0 in speed capability means all speeds are accepted.
Signed
drivers/net: remove useless autoneg capability
The flag ETH_LINK_SPEED_AUTONEG is 0, so it cannot be used in a capability bitmap.
Having 0 in speed capability means all speeds are accepted.
Signed-off-by: Thomas Monjalon <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]>
show more ...
|
| #
7ed15acd |
| 28-Mar-2021 |
Xueming Li <[email protected]> |
net/mlx5: improve xstats of bonding port
In case of kernel bonding device, counter was read from first bonding PF member.
This patch reads all member PFs and sums to get bond xstats.
Signed-off-by
net/mlx5: improve xstats of bonding port
In case of kernel bonding device, counter was read from first bonding PF member.
This patch reads all member PFs and sums to get bond xstats.
Signed-off-by: Xueming Li <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
| #
f5f4c482 |
| 28-Mar-2021 |
Xueming Li <[email protected]> |
net/mlx5: save bonding member ports information
Since kernel bonding netdev doesn't provide statistics counter that reflects all member ports, PMD has to manually summarize counters from each member
net/mlx5: save bonding member ports information
Since kernel bonding netdev doesn't provide statistics counter that reflects all member ports, PMD has to manually summarize counters from each member ports.
As a preparation, this patch collects bonding member port information and saves to shared context data.
Signed-off-by: Xueming Li <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
| #
cb95feef |
| 28-Mar-2021 |
Xueming Li <[email protected]> |
net/mlx5: support sub-function representor
This patch adds support for SF representor. Similar to VF representor, switch port name of SF representor in phys_port_name sysfs key is "pf<x>sf<y>".
Dev
net/mlx5: support sub-function representor
This patch adds support for SF representor. Similar to VF representor, switch port name of SF representor in phys_port_name sysfs key is "pf<x>sf<y>".
Device representor argument is "representors=sf[list]", list member could be mix of instance and range. Example: representors=sf[0,2,4,8-12,-1]
To probe VF representor and SF representor, need to separate into 2 devices: -a <BDF>,representor=vf[list] -a <BDF>,representor=sf[list]
Signed-off-by: Xueming Li <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
| #
59df97f1 |
| 28-Mar-2021 |
Xueming Li <[email protected]> |
common/mlx5: support sub-function representor parsing
This patch supports representor name parsing for SF. In sysfs, representor name stored under "phys_port_name" sysfs key, similar to VF represent
common/mlx5: support sub-function representor parsing
This patch supports representor name parsing for SF. In sysfs, representor name stored under "phys_port_name" sysfs key, similar to VF representor, switch port name of SF representor is "pf<x>sf<y>".
For netlink message, net SF type is supported.
Examples:
pf0sf1 pf0sf[0-3]
Signed-off-by: Xueming Li <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
|
Revision tags: v21.02, v21.02-rc4, v21.02-rc3, v21.02-rc2 |
|
| #
df96fd0d |
| 29-Jan-2021 |
Bruce Richardson <[email protected]> |
ethdev: make driver-only headers private
The rte_ethdev_driver.h, rte_ethdev_vdev.h and rte_ethdev_pci.h files are for drivers only and should be a private to DPDK and not installed.
Signed-off-by:
ethdev: make driver-only headers private
The rte_ethdev_driver.h, rte_ethdev_vdev.h and rte_ethdev_pci.h files are for drivers only and should be a private to DPDK and not installed.
Signed-off-by: Bruce Richardson <[email protected]> Reviewed-by: Maxime Coquelin <[email protected]> Acked-by: Thomas Monjalon <[email protected]> Acked-by: Steven Webster <[email protected]>
show more ...
|
|
Revision tags: v21.02-rc1 |
|
| #
28743807 |
| 28-Dec-2020 |
Tal Shnaiderman <[email protected]> |
net/mlx5: fix device name size on Windows
Windows Devx interface name is the same as device name with different size then IF_NAMESIZE. To support it MLX5_NAMESIZE is defined with IF_NAMESIZE value f
net/mlx5: fix device name size on Windows
Windows Devx interface name is the same as device name with different size then IF_NAMESIZE. To support it MLX5_NAMESIZE is defined with IF_NAMESIZE value for Linux and MLX5_FS_NAME_MAX value for Windows.
Fixes: e9c0b96e3526 ("net/mlx5: move Linux ifname function") Cc: [email protected]
Signed-off-by: Tal Shnaiderman <[email protected]> Acked-by: Matan Azrad <[email protected]>
show more ...
|
|
Revision tags: v20.11, v20.11-rc5 |
|
| #
1101809b |
| 19-Nov-2020 |
Viacheslav Ovsiienko <[email protected]> |
net/mlx5: make ethernet xstats names compliant
xstats names for simple stats are mostly standardized in ethdev drivers and should be compliant with [1]
[1] http://doc.dpdk.org/guides/prog_guide/pol
net/mlx5: make ethernet xstats names compliant
xstats names for simple stats are mostly standardized in ethdev drivers and should be compliant with [1]
[1] http://doc.dpdk.org/guides/prog_guide/poll_mode_drv.html?highlight=xstats#extended-statistics-api
Bugzilla ID: 558
Reported-by: Igor Ryzhov <[email protected]> Signed-off-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
| #
1688c580 |
| 22-Nov-2020 |
Benoît Ganne <[email protected]> |
net/mlx5: allow unknown link speed
mlx5 PMD refuses to update link state if link speed is defined but status is down or if link speed is undefined but status is up, even if the ioctl() succeeded. Th
net/mlx5: allow unknown link speed
mlx5 PMD refuses to update link state if link speed is defined but status is down or if link speed is undefined but status is up, even if the ioctl() succeeded. This prevents application to detect link up/down event, especially when the link speed is not correctly detected.
Commit [1] allowed returning unknown link speed, so now PMD allows the return of unknown link speed in the above case.
Due to some old kernel driver bug, link speed wasn't detected properly.
[1] http://git.dpdk.org/dpdk/commit/?id=810b17d116f03
Signed-off-by: Benoît Ganne <[email protected]> Signed-off-by: Raslan Darawsheh <[email protected]> Acked-by: Matan Azrad <[email protected]>
show more ...
|
|
Revision tags: v20.11-rc4, v20.11-rc3, v20.11-rc2 |
|
| #
b5c8b3e7 |
| 27-Oct-2020 |
Alexander Kozyrev <[email protected]> |
net/mlx5: use C11 atomics for RxQ/TxQ refcounts
The rte_atomic API is deprecated and needs to be replaced with C11 atomic builtins. Use the relaxed ordering for RxQ/TxQ refcounts.
Signed-off-by: Al
net/mlx5: use C11 atomics for RxQ/TxQ refcounts
The rte_atomic API is deprecated and needs to be replaced with C11 atomic builtins. Use the relaxed ordering for RxQ/TxQ refcounts.
Signed-off-by: Alexander Kozyrev <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
|
Revision tags: v20.11-rc1 |
|
| #
c21e5fac |
| 15-Sep-2020 |
Xueming Li <[email protected]> |
net/mlx5: use bond index for netdev operations
In case of bonding, device ifindex was detected as the PF ifindex, so any operation using ifindex applied to PF instead of the bond device. These opera
net/mlx5: use bond index for netdev operations
In case of bonding, device ifindex was detected as the PF ifindex, so any operation using ifindex applied to PF instead of the bond device. These operations includes MTU get/set, up/down and mac address manipulation, etc.
This patch detects bond interface ifindex and name for PF that join a bond interface, uses it by default for netdev operations.
Cc: [email protected]
Signed-off-by: Xueming Li <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
| #
5723fbed |
| 09-Sep-2020 |
Ferruh Yigit <[email protected]> |
ethdev: remove underscore prefix from internal API
'_rte_eth_dev_callback_process()' & '_rte_eth_dev_reset()' internal APIs has unconventional underscore ('_') prefix. Although this is not documente
ethdev: remove underscore prefix from internal API
'_rte_eth_dev_callback_process()' & '_rte_eth_dev_reset()' internal APIs has unconventional underscore ('_') prefix. Although this is not documented most probably this is to mark them as internal. Since we have '__rte_internal' flag to mark this, removing '_' from API names.
For '_rte_eth_dev_reset()', there is already a public API named 'rte_eth_dev_reset()', so renaming '_rte_eth_dev_reset()' to 'rte_eth_dev_internal_reset'.
Signed-off-by: Ferruh Yigit <[email protected]> Acked-by: Andrew Rybchenko <[email protected]> Acked-by: David Marchand <[email protected]> Acked-by: Sachin Saxena <[email protected]>
show more ...
|
|
Revision tags: v20.08, v20.08-rc4, v20.08-rc3, v20.08-rc2 |
|
| #
63d1db71 |
| 21-Jul-2020 |
Michael Baum <[email protected]> |
net/mlx5: fix unlimited parsing of switch info
In mlx5_sysfs_switch_info function, the driver gets switch information associated with network interface.
The driver writes the port name into buffer
net/mlx5: fix unlimited parsing of switch info
In mlx5_sysfs_switch_info function, the driver gets switch information associated with network interface.
The driver writes the port name into buffer and translates it. However, when it writes the name, it does not limit writing to the buffer size.
Limit writing to the size of the buffer.
Fixes: 1256805dd54d ("net/mlx5: move Linux-specific functions") Cc: [email protected]
Signed-off-by: Michael Baum <[email protected]> Acked-by: Matan Azrad <[email protected]>
show more ...
|
| #
ef9ee13f |
| 19-Jul-2020 |
Ophir Munk <[email protected]> |
net/mlx5: cleanup header file
The cleanup refers to header file mlx5.h. 1. Remove unused prototypes. 2. Move prototypes under their correct title. 3. Change functions to static and remove their prot
net/mlx5: cleanup header file
The cleanup refers to header file mlx5.h. 1. Remove unused prototypes. 2. Move prototypes under their correct title. 3. Change functions to static and remove their prototye from the header file.
Signed-off-by: Ophir Munk <[email protected]> Acked-by: Matan Azrad <[email protected]>
show more ...
|
| #
98c4b12a |
| 19-Jul-2020 |
Ophir Munk <[email protected]> |
net/mlx5: eliminate dependency on Linux in shared header
This commit eliminates Linux dependencies in shared file mlx5.h.
1. All functions using 'struct ifreq' are moved to file linux/mlx5_ethdev_o
net/mlx5: eliminate dependency on Linux in shared header
This commit eliminates Linux dependencies in shared file mlx5.h.
1. All functions using 'struct ifreq' are moved to file linux/mlx5_ethdev_os.c such that this struct can be removed from mlx5.h. 2. Function mlx5_set_flags() that uses Linux flags (e.g. IFF_UP) is changed to static and its prototype is removed from mlx5.h. 3. Remove redundant member verbs_action from 'struct mlx5_priv'.
Signed-off-by: Ophir Munk <[email protected]> Acked-by: Matan Azrad <[email protected]>
show more ...
|
|
Revision tags: v20.08-rc1 |
|
| #
2175c4dc |
| 28-Jun-2020 |
Suanming Mou <[email protected]> |
net/mlx5: convert configuration objects to unified malloc
This commit allocates the miscellaneous configuration objects from the unified malloc function.
Signed-off-by: Suanming Mou <suanmingm@mell
net/mlx5: convert configuration objects to unified malloc
This commit allocates the miscellaneous configuration objects from the unified malloc function.
Signed-off-by: Suanming Mou <[email protected]> Acked-by: Matan Azrad <[email protected]>
show more ...
|
| #
420bbdae |
| 23-Jun-2020 |
Viacheslav Ovsiienko <[email protected]> |
net/mlx5: fix host physical function representor naming
The new kernel adds the names like "pf0" for Host PCI physical function representor on Bluefield SmartNIC hosts. This patch provides correct H
net/mlx5: fix host physical function representor naming
The new kernel adds the names like "pf0" for Host PCI physical function representor on Bluefield SmartNIC hosts. This patch provides correct HPF representor recognition over the kernel versions 5.7 and laters.
The following port naming formats are supported:
- missing physical port name (no sysfs/netlink key) at all, master is assumed
- decimal digits (for example "12"), representor is assumed, the value is the index of attached VF
- "p" followed by decimal digits, for example "p2", master is assumed
- "pf" followed by PF index, for example "pf0", Host PF representor is assumed on SmartNIC systems.
- "pf" followed by PF index concatenated with "vf" followed by VF index, for example "pf0vf1", representor is assumed. If index of VF is "-1" it is a special case of Host PF representor, this representor must be indexed in devargs as 65535, for example representor=[0-3,65535] will allow representors for VF0, VF1, VF2, VF3 and for host PF.
Fixes: 79aa430721b1 ("common/mlx5: split common file under Linux directory") Cc: [email protected]
Signed-off-by: Viacheslav Ovsiienko <[email protected]> Acked-by: Matan Azrad <[email protected]>
show more ...
|
| #
aec086c9 |
| 18-Jun-2020 |
Matan Azrad <[email protected]> |
common/mlx5: share kernel interface name getter
Some configuration of the mlx5 port are done by the kernel net device associated to the IB device represents the PCI device.
The DPDK mlx5 driver use
common/mlx5: share kernel interface name getter
Some configuration of the mlx5 port are done by the kernel net device associated to the IB device represents the PCI device.
The DPDK mlx5 driver uses Linux system calls, for example ioctl, in order to configure per port configurations requested by the DPDK user.
One of the basic knowledges required to access the correct kernel net device is its name.
Move function to get interface name from IB device path to the common library.
Signed-off-by: Matan Azrad <[email protected]> Reviewed-by: Maxime Coquelin <[email protected]>
show more ...
|