Needed patches for InfiniBand Support: Flow Steering and Offload Support + Fixes
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
corosync (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
fio (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
glusterfs (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
libcxgb3 (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
libibcm (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
libibverbs (Ubuntu) |
Fix Released
|
Undecided
|
Rafael David Tinoco | ||
Trusty |
Fix Released
|
Undecided
|
Rafael David Tinoco | ||
Vivid |
Fix Released
|
Undecided
|
Rafael David Tinoco | ||
libipathverbs (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
libmlx4 (Ubuntu) |
Fix Released
|
Undecided
|
Rafael David Tinoco | ||
Trusty |
Fix Released
|
Undecided
|
Rafael David Tinoco | ||
Vivid |
Fix Released
|
Undecided
|
Rafael David Tinoco | ||
libmlx5 (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
libmthca (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
libnes (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
librdmacm (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
openmpi (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
perftest (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
qpid-cpp (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
srptools (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Invalid
|
Undecided
|
Unassigned | ||
tgt (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Trusty |
Fix Released
|
Undecided
|
Rafael David Tinoco | ||
Vivid |
Fix Released
|
Undecided
|
Rafael David Tinoco |
Bug Description
[Impact]
== Trusty:
* Today's libibverbs is missing important code for arm64 moonshot project.
* Today's libmlx4 is missing important code for arm64 moonshot project.
- Flow steering control for Openstack enablement on IPoIB
- Offload support flags (for performance)
* Today's tgt is suffering from the lack of iSER support (LP: #1445038).
* qpid-cpp depends on ruby1.8 and should depend on ruby1.9 (LP: #1367255).
Other Cases to justify such SRU:
- LP: #1401575 (dup: #1445038) - iSER not working in Trusty
- LP: #1445038 - TGT does not support ISER discovery
- LP: #1443648 - iSER logouts cause kernel panic in 3.13
- LP: #1401141 - ISC DHCP server does not work with InfiniBand
- LP: #1367255 - qpid-cpp depends on ruby1.8 and should depend on ruby1.9
Collateral Impact:
- srptools
- rdmacm-utils
- perftest
- librdmawrap2
- libopenmpi1.6
- libnes1
- libmthca1
- libmlx5-1
- libipathverbs1
- libibcm1
- libcxgb3-1
- ibverbs-utils
- glusterfs-common
- fio
- libtotem-pg5
- librdmacm1
* libibverbs was re-factored and all rdepends should follow the ABI.
* ALL SRUs should be done AT ONCE together because of ABI dependency.
== Utopic:
* libibverbs had offload capability added.
* libmlx4 had offload capability added.
* tgt does not support iSER.
Other Cases to justify such SRU:
- LP: #1445038 - TGT does not support ISER discovery
- LP: #1401141 - ISC DHCP server does not work with InfiniBand
No Collateral Impact!!!
== Vivid:
* libibverbs had offload capability added.
* libmlx4 had offload capability added.
* tgt does not support iSER.
Other Cases to justify such SRU:
- LP: #1445038 - TGT does not support ISER discovery
- LP: #1401141 - ISC DHCP server does not work with InfiniBand
No Collateral Impact!!!
[ Test Case ]
* libibverbs and libmlx4 are being tested by Mellanox (who better ?)
* There is no support for flow steering for IB (needed) using libibverbs
- try to use IPoIB and flow steering will not work (openstack related)
* iSER is broken in Trusty when using tgt daemon with iSER.
* tgt test case can be seen in LP: #1445038
- you can check test case for tgt in case above.
* https:/
available for testing ALL proposed fixes.
- tests are being asked for Mellanox to accept these fixes.
[Regression Potential]
* Only for InfiniBand users who might rely on libibverbs and its rdepends.
* Today's libibverbs, libmlx4, isc-dhcp and tgt (iser) have issues with IB.
[Other Info]
* Trusty will be fully IB compatible and fixed per Mellanox request.
* Please do consider this as SRU and yes it will be big but needed.
* Any doubt please contact: Rafael Tinoco <email address hidden>
ORIGINAL BUG DESCRIPTION:
Mellanox is requesting Canonical and Ubuntu Community for some patches to be backported from upstream to libibverbs and libmlx4 in order to have their HW proper supported in Trusty, Utopic and Vivid. There are in charge of testing those packages and providing proper verification.
The following patch list is needed:
******
- libibverbs:
Description: Add checksum offload support capability flag
Origin: https:/
Description: Add general definitions to support uverbs extensions
Origin: upstream, commit: cbf2a35162afcc9
Description: Add receive flow steering support
Origin: upstream, commit: 389de6a6ef4ed90
Description: Infrastructure to support verbs extensions
Origin: upstream, commit: 6be16586e081728
- libmlx4:
Description: Remove compatibility with libibverbs < 1.1.7-1ubuntu1
Origin: upstream, commit: bcc5d064268073c
Description: Update to use libiverbs extension support
Origin: upstream, commit: d00cfeb15ef4516
Description: Add receive flow steering support
Origin: upstream, commit: 1b6875d4c2cba3b
Description: Add support for IBV_SEND_IP_CSUM for posted send work-requests.
Origin: https:/
******
Related branches
Changed in libibverbs (Ubuntu): | |
status: | New → In Progress |
assignee: | nobody → Rafael David Tinoco (inaddy) |
description: | updated |
summary: |
- Need to more patches to resolve IPoIB issues + Needed patches for IB: Support for Flow Steering and Offload Support |
description: | updated |
description: | updated |
description: | updated |
description: | updated |
description: | updated |
description: | updated |
description: | updated |
description: | updated |
description: | updated |
description: | updated |
summary: |
- Needed patches for IB: Support for Flow Steering and Offload Support + Needed patches for InfiniBand Support: Flow Steering and Offload Support + + Fixes |
description: | updated |
no longer affects: | corosync (Ubuntu Utopic) |
no longer affects: | corosync (Ubuntu Vivid) |
no longer affects: | fio (Ubuntu Utopic) |
no longer affects: | fio (Ubuntu Vivid) |
no longer affects: | glusterfs (Ubuntu Utopic) |
no longer affects: | glusterfs (Ubuntu Vivid) |
no longer affects: | libcxgb3 (Ubuntu Utopic) |
no longer affects: | libcxgb3 (Ubuntu Vivid) |
no longer affects: | libibcm (Ubuntu Utopic) |
no longer affects: | libibcm (Ubuntu Vivid) |
no longer affects: | libipathverbs (Ubuntu Utopic) |
no longer affects: | libipathverbs (Ubuntu Vivid) |
no longer affects: | libmthca (Ubuntu Utopic) |
no longer affects: | libmthca (Ubuntu Vivid) |
no longer affects: | openmpi (Ubuntu Utopic) |
no longer affects: | openmpi (Ubuntu Vivid) |
no longer affects: | qpid-cpp (Ubuntu Utopic) |
no longer affects: | qpid-cpp (Ubuntu Vivid) |
no longer affects: | perftest (Ubuntu Vivid) |
no longer affects: | perftest (Ubuntu Utopic) |
no longer affects: | srptools (Ubuntu Vivid) |
no longer affects: | srptools (Ubuntu Utopic) |
no longer affects: | libnes (Ubuntu Vivid) |
no longer affects: | libnes (Ubuntu Utopic) |
no longer affects: | libmlx5 (Ubuntu Vivid) |
no longer affects: | libmlx5 (Ubuntu Utopic) |
no longer affects: | librdmacm (Ubuntu Vivid) |
no longer affects: | librdmacm (Ubuntu Utopic) |
Changed in libibverbs (Ubuntu Trusty): | |
milestone: | none → ubuntu-14.04.3 |
Changed in corosync (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in corosync (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
tags: |
added: sts removed: cts |
Changed in fio (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in fio (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in glusterfs (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in glusterfs (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libcxgb3 (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libcxgb3 (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libibcm (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libibcm (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libibverbs (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libibverbs (Ubuntu Utopic): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libibverbs (Ubuntu Vivid): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in tgt (Ubuntu Vivid): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in tgt (Ubuntu Utopic): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in tgt (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libipathverbs (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libipathverbs (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libmlx4 (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libmlx4 (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libmlx4 (Ubuntu Utopic): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libmlx4 (Ubuntu Vivid): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libmlx5 (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libmlx5 (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libmthca (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libmthca (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libnes (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in libnes (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in tgt (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in librdmacm (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in librdmacm (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in openmpi (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in openmpi (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in perftest (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in perftest (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in qpid-cpp (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in qpid-cpp (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in srptools (Ubuntu): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in srptools (Ubuntu Trusty): | |
assignee: | nobody → Rafael David Tinoco (inaddy) |
Changed in corosync (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in fio (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in glusterfs (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in libcxgb3 (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in libibcm (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in libipathverbs (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in libmlx5 (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in libmthca (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in libnes (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in librdmacm (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in openmpi (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in perftest (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in qpid-cpp (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in srptools (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in tgt (Ubuntu): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in srptools (Ubuntu Trusty): | |
status: | New → Invalid |
assignee: | Rafael David Tinoco (inaddy) → nobody |
Changed in qpid-cpp (Ubuntu Trusty): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in corosync (Ubuntu Trusty): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in fio (Ubuntu Trusty): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in glusterfs (Ubuntu Trusty): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in libcxgb3 (Ubuntu Trusty): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in libibcm (Ubuntu Trusty): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in libipathverbs (Ubuntu Trusty): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in libmlx5 (Ubuntu Trusty): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in libmthca (Ubuntu Trusty): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in libnes (Ubuntu Trusty): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in librdmacm (Ubuntu Trusty): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in perftest (Ubuntu Trusty): | |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | New → Invalid |
Changed in openmpi (Ubuntu Trusty): | |
status: | New → In Progress |
assignee: | Rafael David Tinoco (inaddy) → nobody |
status: | In Progress → Invalid |
Changed in libmlx4 (Ubuntu Trusty): | |
status: | New → In Progress |
Changed in libibverbs (Ubuntu Trusty): | |
status: | New → In Progress |
tags: |
added: verification-done removed: verification-needed |
This affects Trusty, Utopic and Vivid (all patches for Trusty and checksum offload support for others). Providing a PPA with patches for Mellanox to test and provide feedback so we can create a SRU proposal.
Thank you
Tinoco