[Bug 1409904] Re: Needed patches for InfiniBand Support: Flow Steering and Offload Support + Fixes

Rafael David Tinoco rafael.tinoco at canonical.com
Tue Aug 4 17:21:03 UTC 2015


After talking to Chris Arges (arges) and Adam Conrad (infinity):

It was clear that if libibverbs fixes (HW enablement) break ABI
compatibility then they are not suitable for a Trusty SRU.

I'll break those fixes and return all of them to their respective cases
since there won't be any ABI being broken:

TGT daemon supporting iSER (iSCSI over IB) fixes (WILL BE FIXED HERE
since Vivid & Wily were already fixed here):

 - LP: #1401575 - iSER not working in Trusty - Invalid.
 - LP: #1445038 - TGT does not support ISER discovery - Duplicate of this bug.
 - LP: #1443648 - iSER logouts cause kernel panic in 3.13 - Fix committed.

DHCP supporting IB properly:

 - LP: #1401141 - ISC DHCP server does not work with InfiniBand - Fix
released.

QPID compilation problem:

 - LP: #1367255 - qpid-cpp depends on ruby1.8 and should depend on
ruby1.9 - Will attach fix.

And all libibverbs rdepends:

- srptools
- rdmacm-utils
- perftest
- librdmawrap2
- libopenmpi1.6
- libnes1
- libmthca1
- libmlx5-1
- libipathverbs1
- libibcm1
- libcxgb3-1
- ibverbs-utils
- glusterfs-common
- fio
- libtotem-pg5
- librdmacm1

Will be safe and not touched.

** Changed in: openmpi (Ubuntu Trusty)
       Status: New => In Progress

** Changed in: openmpi (Ubuntu Trusty)
       Status: In Progress => Invalid

** Changed in: openmpi (Ubuntu Trusty)
     Assignee: Rafael David Tinoco (inaddy) => (unassigned)

** Changed in: libmlx4 (Ubuntu Trusty)
       Status: New => In Progress

** Changed in: libibverbs (Ubuntu Trusty)
       Status: New => In Progress

** Patch removed: "trusty_libibverbs_1.1.7-1ubuntu2.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386837/+files/trusty_libibverbs_1.1.7-1ubuntu2.debdiff

** Patch removed: "trusty_libmlx4_1.0.5-1ubuntu2.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386838/+files/trusty_libmlx4_1.0.5-1ubuntu2.debdiff

** Patch removed: "trusty_librdmacm_1.0.16-1ubuntu1.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386839/+files/trusty_librdmacm_1.0.16-1ubuntu1.debdiff

** Patch removed: "trusty_tgt_1.0.43-0ubuntu5.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386840/+files/trusty_tgt_1.0.43-0ubuntu5.debdiff

** Patch removed: "trusty_qpid-cpp_0.16-7ubuntu6.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386841/+files/trusty_qpid-cpp_0.16-7ubuntu6.debdiff

** Patch removed: "trusty_libnes_1.1.3-1ubuntu1.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386842/+files/trusty_libnes_1.1.3-1ubuntu1.debdiff

** Patch removed: "trusty_libmthca_1.0.6-1ubuntu2.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386843/+files/trusty_libmthca_1.0.6-1ubuntu2.debdiff

** Patch removed: "trusty_libmlx5_1.0.1-0ubuntu3.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386844/+files/trusty_libmlx5_1.0.1-0ubuntu3.debdiff

** Patch removed: "trusty_libipathverbs_1.2-1ubuntu1.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386846/+files/trusty_libipathverbs_1.2-1ubuntu1.debdiff

** Patch removed: "trusty_libibcm_1.0.4-1.2ubuntu1.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386847/+files/trusty_libibcm_1.0.4-1.2ubuntu1.debdiff

** Patch removed: "trusty_libcxgb3_1.3.1-1ubuntu2.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386848/+files/trusty_libcxgb3_1.3.1-1ubuntu2.debdiff

** Patch removed: "trusty_srptools_0.0.4-1.2ubuntu1.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386849/+files/trusty_srptools_0.0.4-1.2ubuntu1.debdiff

** Patch removed: "trusty_openmpi_1.6.5-8ubuntu1.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386850/+files/trusty_openmpi_1.6.5-8ubuntu1.debdiff

** Patch removed: "trusty_perftest_1.2-OFED-1.4.2-2ubuntu1.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386851/+files/trusty_perftest_1.2-OFED-1.4.2-2ubuntu1.debdiff

** Patch removed: "trusty_fio_2.1.3-1ubuntu1.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386852/+files/trusty_fio_2.1.3-1ubuntu1.debdiff

** Patch removed: "trusty_glusterfs_3.4.2-1ubuntu2.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386853/+files/trusty_glusterfs_3.4.2-1ubuntu2.debdiff

** Patch removed: "trusty_corosync_2.3.3-1ubuntu2.debdiff"
   https://bugs.launchpad.net/ubuntu/trusty/+source/libibverbs/+bug/1409904/+attachment/4386854/+files/trusty_corosync_2.3.3-1ubuntu2.debdiff

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1409904

Title:
  Needed patches for InfiniBand Support: Flow Steering and Offload
  Support + Fixes

Status in corosync package in Ubuntu:
  Invalid
Status in fio package in Ubuntu:
  Invalid
Status in glusterfs package in Ubuntu:
  Invalid
Status in libcxgb3 package in Ubuntu:
  Invalid
Status in libibcm package in Ubuntu:
  Invalid
Status in libibverbs package in Ubuntu:
  Fix Released
Status in libipathverbs package in Ubuntu:
  Invalid
Status in libmlx4 package in Ubuntu:
  Fix Released
Status in libmlx5 package in Ubuntu:
  Invalid
Status in libmthca package in Ubuntu:
  Invalid
Status in libnes package in Ubuntu:
  Invalid
Status in librdmacm package in Ubuntu:
  Invalid
Status in openmpi package in Ubuntu:
  Invalid
Status in perftest package in Ubuntu:
  Invalid
Status in qpid-cpp package in Ubuntu:
  Invalid
Status in srptools package in Ubuntu:
  Invalid
Status in tgt package in Ubuntu:
  Invalid
Status in corosync source package in Trusty:
  Invalid
Status in fio source package in Trusty:
  Invalid
Status in glusterfs source package in Trusty:
  Invalid
Status in libcxgb3 source package in Trusty:
  Invalid
Status in libibcm source package in Trusty:
  Invalid
Status in libibverbs source package in Trusty:
  In Progress
Status in libipathverbs source package in Trusty:
  Invalid
Status in libmlx4 source package in Trusty:
  In Progress
Status in libmlx5 source package in Trusty:
  Invalid
Status in libmthca source package in Trusty:
  Invalid
Status in libnes source package in Trusty:
  Invalid
Status in librdmacm source package in Trusty:
  Invalid
Status in openmpi source package in Trusty:
  Invalid
Status in perftest source package in Trusty:
  Invalid
Status in qpid-cpp source package in Trusty:
  Invalid
Status in srptools source package in Trusty:
  Invalid
Status in tgt source package in Trusty:
  New
Status in libibverbs source package in Vivid:
  Fix Committed
Status in libmlx4 source package in Vivid:
  Fix Committed
Status in tgt source package in Vivid:
  Fix Committed

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://launchpad.net/~inaddy/+archive/ubuntu/lp1409904/ 
    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 <rafael.tinoco at canonical.com>

  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://patchwork.kernel.org/patch/5572101/

  Description: Add general definitions to support uverbs extensions
  Origin: upstream, commit: cbf2a35162afcc9e97870b7b18d6477133a8dfa2

  Description: Add receive flow steering support
  Origin: upstream, commit: 389de6a6ef4ed90615629a9eed7f9f17bedf47e3

  Description: Infrastructure to support verbs extensions
  Origin: upstream, commit: 6be16586e081728a28fc41ce2fcc41867b7375ec

  - libmlx4:

  Description: Remove compatibility with libibverbs < 1.1.7-1ubuntu1
  Origin: upstream, commit: bcc5d064268073cb996bdbac1ae36728db3b2c96

  Description: Update to use libiverbs extension support
  Origin: upstream, commit: d00cfeb15ef4516539725b2f6c7d992e7201e13d

  Description: Add receive flow steering support
  Origin: upstream, commit: 1b6875d4c2cba3b751ad0b4286cf52b6a22bff97

  Description: Add support for IBV_SEND_IP_CSUM for posted send work-requests.
  Origin: https://patchwork.kernel.org/patch/5572111/

  ******

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/corosync/+bug/1409904/+subscriptions



More information about the Ubuntu-sponsors mailing list